Class ImmutablePluginProtocTarget

java.lang.Object
io.github.ascopes.protobufmavenplugin.protoc.targets.ImmutablePluginProtocTarget
All Implemented Interfaces:
PluginProtocTarget, ProtocTarget, Comparable<ProtocTarget>

@Generated("org.immutables.processor.ProxyProcessor") public final class ImmutablePluginProtocTarget extends Object implements PluginProtocTarget
Immutable implementation of PluginProtocTarget.

Use the builder to create immutable instances: ImmutablePluginProtocTarget.builder().

  • Field Details

    • plugin

      private final ResolvedProtocPlugin plugin
    • outputPath

      private final Path outputPath
    • order

      private final transient int order
  • Constructor Details

  • Method Details

    • getPlugin

      public ResolvedProtocPlugin getPlugin()
      Specified by:
      getPlugin in interface PluginProtocTarget
      Returns:
      The value of the plugin attribute
    • getOutputPath

      public Path getOutputPath()
      Specified by:
      getOutputPath in interface PluginProtocTarget
      Returns:
      The value of the outputPath attribute
    • getOrder

      public int getOrder()
      Specified by:
      getOrder in interface PluginProtocTarget
      Specified by:
      getOrder in interface ProtocTarget
      Returns:
      The computed-at-construction value of the order attribute
    • equals

      public boolean equals(Object another)
      This instance is equal to all instances of ImmutablePluginProtocTarget that have equal attribute values.
      Overrides:
      equals in class Object
      Returns:
      true if this is equal to another instance
    • equalTo

      private boolean equalTo(int synthetic, ImmutablePluginProtocTarget another)
    • hashCode

      public int hashCode()
      Computes a hash code from attributes: plugin, outputPath, order.
      Overrides:
      hashCode in class Object
      Returns:
      hashCode value
    • toString

      public String toString()
      Prints the immutable value PluginProtocTarget with attribute values.
      Overrides:
      toString in class Object
      Returns:
      A string representation of the value
    • builder

      public static ImmutablePluginProtocTarget.Builder builder()
      Creates a builder for ImmutablePluginProtocTarget.
       ImmutablePluginProtocTarget.builder()
          .plugin(io.github.ascopes.protobufmavenplugin.plugins.ResolvedProtocPlugin | null) // nullable plugin
          .outputPath(java.nio.file.Path | null) // nullable outputPath
          .build();
       
      Returns:
      A new ImmutablePluginProtocTarget builder