Package io.temporal.api.enums.v1
Enum VersioningBehavior
- java.lang.Object
-
- java.lang.Enum<VersioningBehavior>
-
- io.temporal.api.enums.v1.VersioningBehavior
-
- All Implemented Interfaces:
com.google.protobuf.Internal.EnumLite,com.google.protobuf.ProtocolMessageEnum,java.io.Serializable,java.lang.Comparable<VersioningBehavior>
@Generated(value="protoc", comments="annotations:VersioningBehavior.java.pb.meta") public enum VersioningBehavior extends java.lang.Enum<VersioningBehavior> implements com.google.protobuf.ProtocolMessageEnumVersioning Behavior specifies if and how a workflow execution moves between Worker Deployment Versions. The Versioning Behavior of a workflow execution is typically specified by the worker who completes the first task of the execution, but is also overridable manually for new and existing workflows (see VersioningOverride). Experimental. Worker Deployments are experimental and might significantly change in the future.
Protobuf enumtemporal.api.enums.v1.VersioningBehavior
-
-
Enum Constant Summary
Enum Constants Enum Constant Description UNRECOGNIZEDVERSIONING_BEHAVIOR_AUTO_UPGRADEWorkflow will automatically move to the Current Deployment Version of its Task Queue when the next workflow task is dispatched.VERSIONING_BEHAVIOR_PINNEDWorkflow will start on the Current Deployment Version of its Task Queue, and then will be pinned to that same Deployment Version until completion (the Version that this Workflow is pinned to is specified in `versioning_info.version`).VERSIONING_BEHAVIOR_UNSPECIFIEDWorkflow execution does not have a Versioning Behavior and is called Unversioned.
-
Field Summary
Fields Modifier and Type Field Description static intVERSIONING_BEHAVIOR_AUTO_UPGRADE_VALUEWorkflow will automatically move to the Current Deployment Version of its Task Queue when the next workflow task is dispatched.static intVERSIONING_BEHAVIOR_PINNED_VALUEWorkflow will start on the Current Deployment Version of its Task Queue, and then will be pinned to that same Deployment Version until completion (the Version that this Workflow is pinned to is specified in `versioning_info.version`).static intVERSIONING_BEHAVIOR_UNSPECIFIED_VALUEWorkflow execution does not have a Versioning Behavior and is called Unversioned.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static VersioningBehaviorforNumber(int value)static com.google.protobuf.Descriptors.EnumDescriptorgetDescriptor()com.google.protobuf.Descriptors.EnumDescriptorgetDescriptorForType()intgetNumber()com.google.protobuf.Descriptors.EnumValueDescriptorgetValueDescriptor()static com.google.protobuf.Internal.EnumLiteMap<VersioningBehavior>internalGetValueMap()static VersioningBehaviorvalueOf(int value)Deprecated.static VersioningBehaviorvalueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc)Returns the enum constant of this type with the specified name.static VersioningBehaviorvalueOf(java.lang.String name)Returns the enum constant of this type with the specified name.static VersioningBehavior[]values()Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
VERSIONING_BEHAVIOR_UNSPECIFIED
public static final VersioningBehavior VERSIONING_BEHAVIOR_UNSPECIFIED
Workflow execution does not have a Versioning Behavior and is called Unversioned. This is the legacy behavior. An Unversioned workflow's task can go to any Unversioned worker (see `WorkerVersioningMode`.) User needs to use Patching to keep the new code compatible with prior versions when dealing with Unversioned workflows.
VERSIONING_BEHAVIOR_UNSPECIFIED = 0;
-
VERSIONING_BEHAVIOR_PINNED
public static final VersioningBehavior VERSIONING_BEHAVIOR_PINNED
Workflow will start on the Current Deployment Version of its Task Queue, and then will be pinned to that same Deployment Version until completion (the Version that this Workflow is pinned to is specified in `versioning_info.version`). This behavior eliminates most of compatibility concerns users face when changing their code. Patching is not needed when pinned workflows code change. Can be overridden explicitly via `UpdateWorkflowExecutionOptions` API to move the execution to another Deployment Version. Activities of `PINNED` workflows are sent to the same Deployment Version. Exception to this would be when the activity Task Queue workers are not present in the workflow's Deployment Version, in which case the activity will be sent to the Current Deployment Version of its own task queue.
VERSIONING_BEHAVIOR_PINNED = 1;
-
VERSIONING_BEHAVIOR_AUTO_UPGRADE
public static final VersioningBehavior VERSIONING_BEHAVIOR_AUTO_UPGRADE
Workflow will automatically move to the Current Deployment Version of its Task Queue when the next workflow task is dispatched. AutoUpgrade behavior is suitable for long-running workflows as it allows them to move to the latest Deployment Version, but the user still needs to use Patching to keep the new code compatible with prior versions for changed workflow types. Activities of `AUTO_UPGRADE` workflows are sent to the Deployment Version of the workflow execution (as specified in versioning_info.version based on the last completed workflow task). Exception to this would be when the activity Task Queue workers are not present in the workflow's Deployment Version, in which case, the activity will be sent to a different Deployment Version according to the Current Deployment Version of its own task queue. Workflows stuck on a backlogged activity will still auto-upgrade if the Current Deployment Version of their Task Queue changes, without having to wait for the backlogged activity to complete on the old Version.
VERSIONING_BEHAVIOR_AUTO_UPGRADE = 2;
-
UNRECOGNIZED
public static final VersioningBehavior UNRECOGNIZED
-
-
Field Detail
-
VERSIONING_BEHAVIOR_UNSPECIFIED_VALUE
public static final int VERSIONING_BEHAVIOR_UNSPECIFIED_VALUE
Workflow execution does not have a Versioning Behavior and is called Unversioned. This is the legacy behavior. An Unversioned workflow's task can go to any Unversioned worker (see `WorkerVersioningMode`.) User needs to use Patching to keep the new code compatible with prior versions when dealing with Unversioned workflows.
VERSIONING_BEHAVIOR_UNSPECIFIED = 0;- See Also:
- Constant Field Values
-
VERSIONING_BEHAVIOR_PINNED_VALUE
public static final int VERSIONING_BEHAVIOR_PINNED_VALUE
Workflow will start on the Current Deployment Version of its Task Queue, and then will be pinned to that same Deployment Version until completion (the Version that this Workflow is pinned to is specified in `versioning_info.version`). This behavior eliminates most of compatibility concerns users face when changing their code. Patching is not needed when pinned workflows code change. Can be overridden explicitly via `UpdateWorkflowExecutionOptions` API to move the execution to another Deployment Version. Activities of `PINNED` workflows are sent to the same Deployment Version. Exception to this would be when the activity Task Queue workers are not present in the workflow's Deployment Version, in which case the activity will be sent to the Current Deployment Version of its own task queue.
VERSIONING_BEHAVIOR_PINNED = 1;- See Also:
- Constant Field Values
-
VERSIONING_BEHAVIOR_AUTO_UPGRADE_VALUE
public static final int VERSIONING_BEHAVIOR_AUTO_UPGRADE_VALUE
Workflow will automatically move to the Current Deployment Version of its Task Queue when the next workflow task is dispatched. AutoUpgrade behavior is suitable for long-running workflows as it allows them to move to the latest Deployment Version, but the user still needs to use Patching to keep the new code compatible with prior versions for changed workflow types. Activities of `AUTO_UPGRADE` workflows are sent to the Deployment Version of the workflow execution (as specified in versioning_info.version based on the last completed workflow task). Exception to this would be when the activity Task Queue workers are not present in the workflow's Deployment Version, in which case, the activity will be sent to a different Deployment Version according to the Current Deployment Version of its own task queue. Workflows stuck on a backlogged activity will still auto-upgrade if the Current Deployment Version of their Task Queue changes, without having to wait for the backlogged activity to complete on the old Version.
VERSIONING_BEHAVIOR_AUTO_UPGRADE = 2;- See Also:
- Constant Field Values
-
-
Method Detail
-
values
public static VersioningBehavior[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (VersioningBehavior c : VersioningBehavior.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static VersioningBehavior valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (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:
java.lang.IllegalArgumentException- if this enum type has no constant with the specified namejava.lang.NullPointerException- if the argument is null
-
getNumber
public final int getNumber()
- Specified by:
getNumberin interfacecom.google.protobuf.Internal.EnumLite- Specified by:
getNumberin interfacecom.google.protobuf.ProtocolMessageEnum
-
valueOf
@Deprecated public static VersioningBehavior valueOf(int value)
Deprecated.Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (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:
java.lang.IllegalArgumentException- if this enum type has no constant with the specified namejava.lang.NullPointerException- if the argument is null
-
forNumber
public static VersioningBehavior 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<VersioningBehavior> internalGetValueMap()
-
getValueDescriptor
public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor()
- Specified by:
getValueDescriptorin interfacecom.google.protobuf.ProtocolMessageEnum
-
getDescriptorForType
public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType()
- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.ProtocolMessageEnum
-
getDescriptor
public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor()
-
valueOf
public static VersioningBehavior valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (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:
java.lang.IllegalArgumentException- if this enum type has no constant with the specified namejava.lang.NullPointerException- if the argument is null
-
-