Enum Class WorkerVersioningMode

java.lang.Object
java.lang.Enum<WorkerVersioningMode>
io.temporal.api.enums.v1.WorkerVersioningMode
All Implemented Interfaces:
com.google.protobuf.Internal.EnumLite, com.google.protobuf.ProtocolMessageEnum, Serializable, Comparable<WorkerVersioningMode>, Constable

@Generated(value="protoc", comments="annotations:WorkerVersioningMode.java.pb.meta") public enum WorkerVersioningMode extends Enum<WorkerVersioningMode> implements com.google.protobuf.ProtocolMessageEnum
 Versioning Mode of a worker is set by the app developer in the worker code, and specifies the
 behavior of the system in the following related aspects:
 - Whether or not Temporal Server considers this worker's version (Build ID) when dispatching
   tasks to it.
 - Whether or not the workflows processed by this worker are versioned using the worker's version.
 
Protobuf enum temporal.api.enums.v1.WorkerVersioningMode
  • Enum Constant Details

    • WORKER_VERSIONING_MODE_UNSPECIFIED

      public static final WorkerVersioningMode WORKER_VERSIONING_MODE_UNSPECIFIED
      WORKER_VERSIONING_MODE_UNSPECIFIED = 0;
    • WORKER_VERSIONING_MODE_UNVERSIONED

      public static final WorkerVersioningMode WORKER_VERSIONING_MODE_UNVERSIONED
       Workers with this mode are not distinguished from each other for task routing, even if they
       have different Build IDs.
       Workflows processed by this worker will be unversioned and user needs to use Patching to keep
       the new code compatible with prior versions.
       This mode is recommended to be used along with Rolling Upgrade deployment strategies.
       Workers with this mode are represented by the special string `__unversioned__` in the APIs.
       
      WORKER_VERSIONING_MODE_UNVERSIONED = 1;
    • WORKER_VERSIONING_MODE_VERSIONED

      public static final WorkerVersioningMode WORKER_VERSIONING_MODE_VERSIONED
       Workers with this mode are part of a Worker Deployment Version which is identified as
       "<deployment_name>.<build_id>". Such workers are called "versioned" as opposed to
       "unversioned".
       Each Deployment Version is distinguished from other Versions for task routing and users can
       configure Temporal Server to send tasks to a particular Version (see
       `WorkerDeploymentInfo.routing_config`). This mode is the best option for Blue/Green and
       Rainbow strategies (but typically not suitable for Rolling upgrades.)
       Workflow Versioning Behaviors are enabled in this mode: each workflow type must choose
       between the Pinned and AutoUpgrade behaviors. Depending on the chosen behavior, the user may
       or may not need to use Patching to keep the new code compatible with prior versions. (see
       VersioningBehavior enum.)
       
      WORKER_VERSIONING_MODE_VERSIONED = 2;
    • UNRECOGNIZED

      public static final WorkerVersioningMode UNRECOGNIZED
  • Field Details

    • WORKER_VERSIONING_MODE_UNSPECIFIED_VALUE

      public static final int WORKER_VERSIONING_MODE_UNSPECIFIED_VALUE
      WORKER_VERSIONING_MODE_UNSPECIFIED = 0;
      See Also:
    • WORKER_VERSIONING_MODE_UNVERSIONED_VALUE

      public static final int WORKER_VERSIONING_MODE_UNVERSIONED_VALUE
       Workers with this mode are not distinguished from each other for task routing, even if they
       have different Build IDs.
       Workflows processed by this worker will be unversioned and user needs to use Patching to keep
       the new code compatible with prior versions.
       This mode is recommended to be used along with Rolling Upgrade deployment strategies.
       Workers with this mode are represented by the special string `__unversioned__` in the APIs.
       
      WORKER_VERSIONING_MODE_UNVERSIONED = 1;
      See Also:
    • WORKER_VERSIONING_MODE_VERSIONED_VALUE

      public static final int WORKER_VERSIONING_MODE_VERSIONED_VALUE
       Workers with this mode are part of a Worker Deployment Version which is identified as
       "<deployment_name>.<build_id>". Such workers are called "versioned" as opposed to
       "unversioned".
       Each Deployment Version is distinguished from other Versions for task routing and users can
       configure Temporal Server to send tasks to a particular Version (see
       `WorkerDeploymentInfo.routing_config`). This mode is the best option for Blue/Green and
       Rainbow strategies (but typically not suitable for Rolling upgrades.)
       Workflow Versioning Behaviors are enabled in this mode: each workflow type must choose
       between the Pinned and AutoUpgrade behaviors. Depending on the chosen behavior, the user may
       or may not need to use Patching to keep the new code compatible with prior versions. (see
       VersioningBehavior enum.)
       
      WORKER_VERSIONING_MODE_VERSIONED = 2;
      See Also:
  • Method Details

    • values

      public static WorkerVersioningMode[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static WorkerVersioningMode valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • getNumber

      public final int getNumber()
      Specified by:
      getNumber in interface com.google.protobuf.Internal.EnumLite
      Specified by:
      getNumber in interface com.google.protobuf.ProtocolMessageEnum
    • valueOf

      @Deprecated public static WorkerVersioningMode valueOf(int value)
      Deprecated.
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      value - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • forNumber

      public static WorkerVersioningMode forNumber(int value)
      Parameters:
      value - The numeric wire value of the corresponding enum entry.
      Returns:
      The enum associated with the given numeric wire value.
    • internalGetValueMap

      public static com.google.protobuf.Internal.EnumLiteMap<WorkerVersioningMode> internalGetValueMap()
    • getValueDescriptor

      public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor()
      Specified by:
      getValueDescriptor in interface com.google.protobuf.ProtocolMessageEnum
    • getDescriptorForType

      public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.ProtocolMessageEnum
    • getDescriptor

      public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor()
    • valueOf

      public static WorkerVersioningMode valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      desc - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null