Class PluginProtos.CodeGeneratorResponse.File

All Implemented Interfaces:
PluginProtos.CodeGeneratorResponse.FileOrBuilder, Message, MessageLite, MessageLiteOrBuilder, MessageOrBuilder, Serializable
Enclosing class:
PluginProtos.CodeGeneratorResponse

public static final class PluginProtos.CodeGeneratorResponse.File extends GeneratedMessageV3 implements PluginProtos.CodeGeneratorResponse.FileOrBuilder
 Represents a single generated file.
 
Protobuf type google.protobuf.compiler.CodeGeneratorResponse.File
See Also:
  • Field Details

  • Constructor Details

  • Method Details

    • newInstance

      protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
      Description copied from class: GeneratedMessageV3
      Creates a new instance of this message type. Overridden in the generated code.
      Overrides:
      newInstance in class GeneratedMessageV3
    • getUnknownFields

      public final UnknownFieldSet getUnknownFields()
      Description copied from interface: MessageOrBuilder
      Get the UnknownFieldSet for this message.
      Specified by:
      getUnknownFields in interface MessageOrBuilder
      Overrides:
      getUnknownFields in class GeneratedMessageV3
    • getDescriptor

      public static final Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
      Description copied from class: GeneratedMessageV3
      Get the FieldAccessorTable for this type. We can't have the message class pass this in to the constructor because of bootstrapping trouble with DescriptorProtos.
      Specified by:
      internalGetFieldAccessorTable in class GeneratedMessageV3
    • hasName

      public boolean hasName()
       The file name, relative to the output directory.  The name must not
       contain "." or ".." components and must be relative, not be absolute (so,
       the file cannot lie outside the output directory).  "/" must be used as
       the path separator, not "\".
       If the name is omitted, the content will be appended to the previous
       file.  This allows the generator to break large files into small chunks,
       and allows the generated text to be streamed back to protoc so that large
       files need not reside completely in memory at one time.  Note that as of
       this writing protoc does not optimize for this -- it will read the entire
       CodeGeneratorResponse before writing files to disk.
       
      optional string name = 1;
      Specified by:
      hasName in interface PluginProtos.CodeGeneratorResponse.FileOrBuilder
      Returns:
      Whether the name field is set.
    • getName

      public String getName()
       The file name, relative to the output directory.  The name must not
       contain "." or ".." components and must be relative, not be absolute (so,
       the file cannot lie outside the output directory).  "/" must be used as
       the path separator, not "\".
       If the name is omitted, the content will be appended to the previous
       file.  This allows the generator to break large files into small chunks,
       and allows the generated text to be streamed back to protoc so that large
       files need not reside completely in memory at one time.  Note that as of
       this writing protoc does not optimize for this -- it will read the entire
       CodeGeneratorResponse before writing files to disk.
       
      optional string name = 1;
      Specified by:
      getName in interface PluginProtos.CodeGeneratorResponse.FileOrBuilder
      Returns:
      The name.
    • getNameBytes

      public ByteString getNameBytes()
       The file name, relative to the output directory.  The name must not
       contain "." or ".." components and must be relative, not be absolute (so,
       the file cannot lie outside the output directory).  "/" must be used as
       the path separator, not "\".
       If the name is omitted, the content will be appended to the previous
       file.  This allows the generator to break large files into small chunks,
       and allows the generated text to be streamed back to protoc so that large
       files need not reside completely in memory at one time.  Note that as of
       this writing protoc does not optimize for this -- it will read the entire
       CodeGeneratorResponse before writing files to disk.
       
      optional string name = 1;
      Specified by:
      getNameBytes in interface PluginProtos.CodeGeneratorResponse.FileOrBuilder
      Returns:
      The bytes for name.
    • hasInsertionPoint

      public boolean hasInsertionPoint()
       If non-empty, indicates that the named file should already exist, and the
       content here is to be inserted into that file at a defined insertion
       point.  This feature allows a code generator to extend the output
       produced by another code generator.  The original generator may provide
       insertion points by placing special annotations in the file that look
       like:
         @@protoc_insertion_point(NAME)
       The annotation can have arbitrary text before and after it on the line,
       which allows it to be placed in a comment.  NAME should be replaced with
       an identifier naming the point -- this is what other generators will use
       as the insertion_point.  Code inserted at this point will be placed
       immediately above the line containing the insertion point (thus multiple
       insertions to the same point will come out in the order they were added).
       The double-@ is intended to make it unlikely that the generated code
       could contain things that look like insertion points by accident.
       For example, the C++ code generator places the following line in the
       .pb.h files that it generates:
         // @@protoc_insertion_point(namespace_scope)
       This line appears within the scope of the file's package namespace, but
       outside of any particular class.  Another plugin can then specify the
       insertion_point "namespace_scope" to generate additional classes or
       other declarations that should be placed in this scope.
       Note that if the line containing the insertion point begins with
       whitespace, the same whitespace will be added to every line of the
       inserted text.  This is useful for languages like Python, where
       indentation matters.  In these languages, the insertion point comment
       should be indented the same amount as any inserted code will need to be
       in order to work correctly in that context.
       The code generator that generates the initial file and the one which
       inserts into it must both run as part of a single invocation of protoc.
       Code generators are executed in the order in which they appear on the
       command line.
       If |insertion_point| is present, |name| must also be present.
       
      optional string insertion_point = 2;
      Specified by:
      hasInsertionPoint in interface PluginProtos.CodeGeneratorResponse.FileOrBuilder
      Returns:
      Whether the insertionPoint field is set.
    • getInsertionPoint

      public String getInsertionPoint()
       If non-empty, indicates that the named file should already exist, and the
       content here is to be inserted into that file at a defined insertion
       point.  This feature allows a code generator to extend the output
       produced by another code generator.  The original generator may provide
       insertion points by placing special annotations in the file that look
       like:
         @@protoc_insertion_point(NAME)
       The annotation can have arbitrary text before and after it on the line,
       which allows it to be placed in a comment.  NAME should be replaced with
       an identifier naming the point -- this is what other generators will use
       as the insertion_point.  Code inserted at this point will be placed
       immediately above the line containing the insertion point (thus multiple
       insertions to the same point will come out in the order they were added).
       The double-@ is intended to make it unlikely that the generated code
       could contain things that look like insertion points by accident.
       For example, the C++ code generator places the following line in the
       .pb.h files that it generates:
         // @@protoc_insertion_point(namespace_scope)
       This line appears within the scope of the file's package namespace, but
       outside of any particular class.  Another plugin can then specify the
       insertion_point "namespace_scope" to generate additional classes or
       other declarations that should be placed in this scope.
       Note that if the line containing the insertion point begins with
       whitespace, the same whitespace will be added to every line of the
       inserted text.  This is useful for languages like Python, where
       indentation matters.  In these languages, the insertion point comment
       should be indented the same amount as any inserted code will need to be
       in order to work correctly in that context.
       The code generator that generates the initial file and the one which
       inserts into it must both run as part of a single invocation of protoc.
       Code generators are executed in the order in which they appear on the
       command line.
       If |insertion_point| is present, |name| must also be present.
       
      optional string insertion_point = 2;
      Specified by:
      getInsertionPoint in interface PluginProtos.CodeGeneratorResponse.FileOrBuilder
      Returns:
      The insertionPoint.
    • getInsertionPointBytes

      public ByteString getInsertionPointBytes()
       If non-empty, indicates that the named file should already exist, and the
       content here is to be inserted into that file at a defined insertion
       point.  This feature allows a code generator to extend the output
       produced by another code generator.  The original generator may provide
       insertion points by placing special annotations in the file that look
       like:
         @@protoc_insertion_point(NAME)
       The annotation can have arbitrary text before and after it on the line,
       which allows it to be placed in a comment.  NAME should be replaced with
       an identifier naming the point -- this is what other generators will use
       as the insertion_point.  Code inserted at this point will be placed
       immediately above the line containing the insertion point (thus multiple
       insertions to the same point will come out in the order they were added).
       The double-@ is intended to make it unlikely that the generated code
       could contain things that look like insertion points by accident.
       For example, the C++ code generator places the following line in the
       .pb.h files that it generates:
         // @@protoc_insertion_point(namespace_scope)
       This line appears within the scope of the file's package namespace, but
       outside of any particular class.  Another plugin can then specify the
       insertion_point "namespace_scope" to generate additional classes or
       other declarations that should be placed in this scope.
       Note that if the line containing the insertion point begins with
       whitespace, the same whitespace will be added to every line of the
       inserted text.  This is useful for languages like Python, where
       indentation matters.  In these languages, the insertion point comment
       should be indented the same amount as any inserted code will need to be
       in order to work correctly in that context.
       The code generator that generates the initial file and the one which
       inserts into it must both run as part of a single invocation of protoc.
       Code generators are executed in the order in which they appear on the
       command line.
       If |insertion_point| is present, |name| must also be present.
       
      optional string insertion_point = 2;
      Specified by:
      getInsertionPointBytes in interface PluginProtos.CodeGeneratorResponse.FileOrBuilder
      Returns:
      The bytes for insertionPoint.
    • hasContent

      public boolean hasContent()
       The file contents.
       
      optional string content = 15;
      Specified by:
      hasContent in interface PluginProtos.CodeGeneratorResponse.FileOrBuilder
      Returns:
      Whether the content field is set.
    • getContent

      public String getContent()
       The file contents.
       
      optional string content = 15;
      Specified by:
      getContent in interface PluginProtos.CodeGeneratorResponse.FileOrBuilder
      Returns:
      The content.
    • getContentBytes

      public ByteString getContentBytes()
       The file contents.
       
      optional string content = 15;
      Specified by:
      getContentBytes in interface PluginProtos.CodeGeneratorResponse.FileOrBuilder
      Returns:
      The bytes for content.
    • hasGeneratedCodeInfo

      public boolean hasGeneratedCodeInfo()
       Information describing the file content being inserted. If an insertion
       point is used, this information will be appropriately offset and inserted
       into the code generation metadata for the generated files.
       
      optional .google.protobuf.GeneratedCodeInfo generated_code_info = 16;
      Specified by:
      hasGeneratedCodeInfo in interface PluginProtos.CodeGeneratorResponse.FileOrBuilder
      Returns:
      Whether the generatedCodeInfo field is set.
    • getGeneratedCodeInfo

      public DescriptorProtos.GeneratedCodeInfo getGeneratedCodeInfo()
       Information describing the file content being inserted. If an insertion
       point is used, this information will be appropriately offset and inserted
       into the code generation metadata for the generated files.
       
      optional .google.protobuf.GeneratedCodeInfo generated_code_info = 16;
      Specified by:
      getGeneratedCodeInfo in interface PluginProtos.CodeGeneratorResponse.FileOrBuilder
      Returns:
      The generatedCodeInfo.
    • getGeneratedCodeInfoOrBuilder

      public DescriptorProtos.GeneratedCodeInfoOrBuilder getGeneratedCodeInfoOrBuilder()
       Information describing the file content being inserted. If an insertion
       point is used, this information will be appropriately offset and inserted
       into the code generation metadata for the generated files.
       
      optional .google.protobuf.GeneratedCodeInfo generated_code_info = 16;
      Specified by:
      getGeneratedCodeInfoOrBuilder in interface PluginProtos.CodeGeneratorResponse.FileOrBuilder
    • isInitialized

      public final boolean isInitialized()
      Description copied from interface: MessageLiteOrBuilder
      Returns true if all required fields in the message and all embedded messages are set, false otherwise.

      See also: MessageOrBuilder.getInitializationErrorString()

      Specified by:
      isInitialized in interface MessageLiteOrBuilder
      Overrides:
      isInitialized in class GeneratedMessageV3
    • writeTo

      public void writeTo(CodedOutputStream output) throws IOException
      Description copied from interface: MessageLite
      Serializes the message and writes it to output. This does not flush or close the stream.
      Specified by:
      writeTo in interface MessageLite
      Overrides:
      writeTo in class GeneratedMessageV3
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Description copied from interface: MessageLite
      Get the number of bytes required to encode this message. The result is only computed on the first call and memoized after that. If this message requires more than Integer.MAX_VALUE bytes to encode, the return value will be smaller than the actual number of bytes required and might be negative.
      Specified by:
      getSerializedSize in interface MessageLite
      Overrides:
      getSerializedSize in class GeneratedMessageV3
    • equals

      public boolean equals(Object obj)
      Description copied from interface: Message
      Compares the specified object with this message for equality. Returns true if the given object is a message of the same type (as defined by getDescriptorForType()) and has identical values for all of its fields. Subclasses must implement this; inheriting Object.equals() is incorrect.
      Specified by:
      equals in interface Message
      Overrides:
      equals in class AbstractMessage
      Parameters:
      obj - object to be compared for equality with this message
      Returns:
      true if the specified object is equal to this message
    • hashCode

      public int hashCode()
      Description copied from interface: Message
      Returns the hash code value for this message. The hash code of a message should mix the message's type (object identity of the descriptor) with its contents (known and unknown field values). Subclasses must implement this; inheriting Object.hashCode() is incorrect.
      Specified by:
      hashCode in interface Message
      Overrides:
      hashCode in class AbstractMessage
      Returns:
      the hash code value for this message
      See Also:
    • parseFrom

      Throws:
      InvalidProtocolBufferException
    • parseFrom

      Throws:
      InvalidProtocolBufferException
    • parseFrom

      Throws:
      InvalidProtocolBufferException
    • parseFrom

      Throws:
      InvalidProtocolBufferException
    • parseFrom

      public static PluginProtos.CodeGeneratorResponse.File parseFrom(byte[] data) throws InvalidProtocolBufferException
      Throws:
      InvalidProtocolBufferException
    • parseFrom

      public static PluginProtos.CodeGeneratorResponse.File parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry) throws InvalidProtocolBufferException
      Throws:
      InvalidProtocolBufferException
    • parseFrom

      public static PluginProtos.CodeGeneratorResponse.File parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static PluginProtos.CodeGeneratorResponse.File parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static PluginProtos.CodeGeneratorResponse.File parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static PluginProtos.CodeGeneratorResponse.File parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      Throws:
      IOException
    • parseFrom

      public static PluginProtos.CodeGeneratorResponse.File parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilderForType

      Description copied from interface: MessageLite
      Constructs a new builder for a message of the same type as this message.
      Specified by:
      newBuilderForType in interface Message
      Specified by:
      newBuilderForType in interface MessageLite
    • newBuilder

    • newBuilder

    • toBuilder

      Description copied from interface: MessageLite
      Constructs a builder initialized with the current message. Use this to derive a new message from the current one.
      Specified by:
      toBuilder in interface Message
      Specified by:
      toBuilder in interface MessageLite
    • newBuilderForType

      Description copied from class: GeneratedMessageV3
      TODO(xiaofeng): remove this together with GeneratedMessageV3.BuilderParent.
      Specified by:
      newBuilderForType in class GeneratedMessageV3
    • getDefaultInstance

      public static PluginProtos.CodeGeneratorResponse.File getDefaultInstance()
    • parser

    • getParserForType

      public Parser<PluginProtos.CodeGeneratorResponse.File> getParserForType()
      Description copied from interface: MessageLite
      Gets the parser for a message of the same type as this message.
      Specified by:
      getParserForType in interface Message
      Specified by:
      getParserForType in interface MessageLite
      Overrides:
      getParserForType in class GeneratedMessageV3
    • getDefaultInstanceForType

      public PluginProtos.CodeGeneratorResponse.File getDefaultInstanceForType()
      Description copied from interface: MessageLiteOrBuilder
      Get an instance of the type with no fields set. Because no fields are set, all getters for singular fields will return default values and repeated fields will appear empty. This may or may not be a singleton. This differs from the getDefaultInstance() method of generated message classes in that this method is an abstract method of the MessageLite interface whereas getDefaultInstance() is a static method of a specific class. They return the same thing.
      Specified by:
      getDefaultInstanceForType in interface MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface MessageOrBuilder