Class Proto

    • Field Detail

      • file

        final java.io.File file
      • url

        final java.net.URL url
      • importer

        final Proto importer
      • packageName

        Mutable<java.lang.String> packageName
      • javaPackageName

        Mutable<java.lang.String> javaPackageName
      • importedProtos

        final java.util.LinkedHashMap<java.lang.String,​Proto> importedProtos
      • standardOptions

        final java.util.LinkedHashMap<java.lang.String,​java.lang.Object> standardOptions
      • extraOptions

        final java.util.LinkedHashMap<java.lang.String,​java.lang.Object> extraOptions
      • messages

        final java.util.LinkedHashMap<java.lang.String,​Message> messages
      • enumGroups

        final java.util.LinkedHashMap<java.lang.String,​EnumGroup> enumGroups
      • services

        final java.util.LinkedHashMap<java.lang.String,​Service> services
      • extensions

        final java.util.ArrayList<Extension> extensions
      • fullyQualifiedMessages

        final java.util.LinkedHashMap<java.lang.String,​Message> fullyQualifiedMessages
      • fullyQualifiedEnumGroups

        final java.util.LinkedHashMap<java.lang.String,​EnumGroup> fullyQualifiedEnumGroups
      • refOffset

        int refOffset
      • sourcePath

        private java.lang.String sourcePath
    • Constructor Detail

      • Proto

        public Proto()
      • Proto

        public Proto​(java.io.File file)
      • Proto

        public Proto​(java.io.File file,
                     Proto.Loader loader)
    • Method Detail

      • getFile

        public java.io.File getFile()
      • getSourcePath

        public java.lang.String getSourcePath()
      • getMutablePackageName

        public Mutable<java.lang.String> getMutablePackageName()
      • getPackageName

        public java.lang.String getPackageName()
      • getOriginalPackageName

        public java.lang.String getOriginalPackageName()
        Returns the package name that was configured in the proto. Note that getPackageName() will have the same value as this, if the compiler options did not have entries that override it.
      • getMutableJavaPackageName

        public Mutable<java.lang.String> getMutableJavaPackageName()
      • getJavaPackageName

        public java.lang.String getJavaPackageName()
      • getOriginalJavaPackageName

        public java.lang.String getOriginalJavaPackageName()
        Returns the java package name that was configured in the proto. Note that getJavaPackageName() will have the same value as this, if the compiler options did not have entries that override it.
      • setPackageName

        void setPackageName​(java.lang.String packageName)
      • getStandardOptions

        public java.util.LinkedHashMap<java.lang.String,​java.lang.Object> getStandardOptions()
      • getStandardOption

        public java.lang.Object getStandardOption​(java.lang.String name)
      • getExtraOptions

        public java.util.LinkedHashMap<java.lang.String,​java.lang.Object> getExtraOptions()
      • getO

        public java.util.LinkedHashMap<java.lang.String,​java.lang.Object> getO()
      • getOptions

        public java.util.LinkedHashMap<java.lang.String,​java.lang.Object> getOptions()
        Specified by:
        getOptions in interface HasOptions
      • putStandardOption

        public void putStandardOption​(java.lang.String key,
                                      java.lang.Object value)
        Specified by:
        putStandardOption in interface HasOptions
      • putExtraOption

        public void putExtraOption​(java.lang.String key,
                                   java.lang.Object value)
        Specified by:
        putExtraOption in interface HasOptions
      • getExtraOption

        public <V> V getExtraOption​(java.lang.String key)
      • getMessageMap

        public java.util.Map<java.lang.String,​Message> getMessageMap()
      • getMessages

        public java.util.Collection<Message> getMessages()
      • getMessage

        public Message getMessage​(java.lang.String name)
      • addMessage

        void addMessage​(Message message)
      • getEnumGroupMap

        public java.util.Map<java.lang.String,​EnumGroup> getEnumGroupMap()
      • getEnumGroups

        public java.util.Collection<EnumGroup> getEnumGroups()
      • getEnumGroup

        public EnumGroup getEnumGroup​(java.lang.String name)
      • addEnumGroup

        void addEnumGroup​(EnumGroup enumGroup)
      • getServiceMap

        public java.util.Map<java.lang.String,​Service> getServiceMap()
      • getServices

        public java.util.Collection<Service> getServices()
      • getService

        public Service getService​(java.lang.String name)
      • addService

        void addService​(Service service)
      • addExtension

        public void addExtension​(Extension extension)
      • getExtensions

        public java.util.Collection<Extension> getExtensions()
      • getImportedProtos

        public java.util.Collection<Proto> getImportedProtos()
      • getImportedProto

        public Proto getImportedProto​(java.io.File file)
      • getImportedProto

        public Proto getImportedProto​(java.net.URL url)
      • getImportedProto

        public Proto getImportedProto​(java.lang.String url)
      • importProto

        void importProto​(java.lang.String path)
      • addImportedProto

        void addImportedProto​(Proto proto)
      • postParse

        void postParse()
      • addAnnotationsTo

        void addAnnotationsTo​(Message target)
      • addAnnotationsTo

        void addAnnotationsTo​(EnumGroup target)
      • addAnnotationsTo

        void addAnnotationsTo​(Field<?> target,
                              java.lang.String enclosingNamespace)
      • addAnnotationsTo

        void addAnnotationsTo​(Service target)
      • addAnnotationsTo

        void addAnnotationsTo​(Extension target)
      • findReference

        HasName findReference​(java.lang.String fullRefName,
                              java.lang.String enclosingNamespace)
        Given the name of a Message/EnumGroup reference and the namespace enclosing that reference (can be a full message name or package name), returns the referenced object if it exists.
        Parameters:
        fullRefName - The full name of the object as specified by the reference, including a package name if it was specified
        fullEnclosingNamespace - The full enclosing namespace of the reference
        Returns:
        A Message or EnumGroup instance, or null
      • findMessageReference

        Message findMessageReference​(java.lang.String fullRefName,
                                     java.lang.String enclosingNamespace)
      • findEnumGroupReference

        EnumGroup findEnumGroupReference​(java.lang.String fullRefName,
                                         java.lang.String enclosingNamespace)
      • findFullyQualifiedObject

        HasName findFullyQualifiedObject​(java.lang.String fullyQualifiedName)
        Returns a Message or EnumGroup given its fully qualified name
        Parameters:
        fullyQualifiedName - The fully qualified name, without an initial dot ('.')
        Returns:
        The Message or EnumGroup instance if it is defined in this Proto or one of its imports.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object