Class ProtocPlugin


  • public class ProtocPlugin
    extends java.lang.Object
    Describes a protoc plugin that is written in Java and assembled from resolved artifacts at runtime. The state is populated from the Maven plugin's configuration.
    Since:
    0.3.0
    • Constructor Summary

      Constructors 
      Constructor Description
      ProtocPlugin()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private boolean archDirectoryExists​(java.lang.String arch)  
      java.util.List<java.lang.String> getArgs()
      Returns optional command line arguments to pass to the main() method.
      java.lang.String getArtifactId()
      Returns the plugin's artifact id for dependency resolution.
      java.lang.String getClassifier()
      Returns an optional classifier of the plugin's artifact for dependency resolution.
      java.lang.String getGroupId()
      Returns group id of the plugin's artifact for dependency resolution.
      java.lang.String getId()
      Returns the unique id for this plugin.
      java.lang.String getJavaHome()  
      java.util.List<java.lang.String> getJvmArgs()
      Returns optional JVM options for plugin execution.
      java.lang.String getMainClass()
      Returns the plugin's Java main class to be execute by protoc.
      java.io.File getPluginExecutableFile​(java.io.File pluginDirectory)
      Returns the generated plugin executable path.
      java.lang.String getPluginName()  
      java.lang.String getVersion()
      Returns the plugin's version specification for dependency resolution.
      java.lang.String getWinJvmDataModel()  
      void setJavaHome​(java.lang.String javaHome)  
      java.lang.String toString()  
      void validate​(org.apache.maven.plugin.logging.Log log)
      Validate the state of this plugin specification.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • DATA_MODEL_SYSPROP

        private static final java.lang.String DATA_MODEL_SYSPROP
        See Also:
        Constant Field Values
      • WIN_JVM_DATA_MODEL_32

        private static final java.lang.String WIN_JVM_DATA_MODEL_32
        See Also:
        Constant Field Values
      • WIN_JVM_DATA_MODEL_64

        private static final java.lang.String WIN_JVM_DATA_MODEL_64
        See Also:
        Constant Field Values
      • id

        private java.lang.String id
      • groupId

        private java.lang.String groupId
      • artifactId

        private java.lang.String artifactId
      • version

        private java.lang.String version
      • classifier

        private java.lang.String classifier
      • mainClass

        private java.lang.String mainClass
      • javaHome

        private java.lang.String javaHome
      • winJvmDataModel

        private java.lang.String winJvmDataModel
      • args

        private java.util.List<java.lang.String> args
      • jvmArgs

        private java.util.List<java.lang.String> jvmArgs
    • Constructor Detail

      • ProtocPlugin

        public ProtocPlugin()
    • Method Detail

      • getId

        public java.lang.String getId()
        Returns the unique id for this plugin.
        Returns:
        the plugin's unique id.
      • getGroupId

        public java.lang.String getGroupId()
        Returns group id of the plugin's artifact for dependency resolution.
        Returns:
        the plugin's group id.
      • getArtifactId

        public java.lang.String getArtifactId()
        Returns the plugin's artifact id for dependency resolution.
        Returns:
        the plugin's artifact id.
      • getVersion

        public java.lang.String getVersion()
        Returns the plugin's version specification for dependency resolution. This can be specified as either a single version or a version range.
        Returns:
        the plugin's version or version range.
      • getClassifier

        public java.lang.String getClassifier()
        Returns an optional classifier of the plugin's artifact for dependency resolution.
        Returns:
        the plugin's artifact classifier.
      • getMainClass

        public java.lang.String getMainClass()
        Returns the plugin's Java main class to be execute by protoc.
        Returns:
        fully qualified name for the main class.
      • getArgs

        public java.util.List<java.lang.String> getArgs()
        Returns optional command line arguments to pass to the main() method.
        Returns:
        a list of command-line arguments.
      • getJvmArgs

        public java.util.List<java.lang.String> getJvmArgs()
        Returns optional JVM options for plugin execution.
        Returns:
        a list of JVM options.
      • getJavaHome

        public java.lang.String getJavaHome()
      • setJavaHome

        public void setJavaHome​(java.lang.String javaHome)
      • getWinJvmDataModel

        public java.lang.String getWinJvmDataModel()
      • getPluginName

        public java.lang.String getPluginName()
      • validate

        public void validate​(org.apache.maven.plugin.logging.Log log)
        Validate the state of this plugin specification.
        Parameters:
        log - a logger instance for diagnostic output.
      • archDirectoryExists

        private boolean archDirectoryExists​(java.lang.String arch)
      • getPluginExecutableFile

        public java.io.File getPluginExecutableFile​(java.io.File pluginDirectory)
        Returns the generated plugin executable path.
        Parameters:
        pluginDirectory - directory where plugins will be created
        Returns:
        file handle for the plugin executable.
      • toString

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