Class WorkflowExecutionVersioningInfo

  • All Implemented Interfaces:
    com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, WorkflowExecutionVersioningInfoOrBuilder, java.io.Serializable

    @Generated(value="protoc",
               comments="annotations:WorkflowExecutionVersioningInfo.java.pb.meta")
    public final class WorkflowExecutionVersioningInfo
    extends com.google.protobuf.GeneratedMessageV3
    implements WorkflowExecutionVersioningInfoOrBuilder
     Holds all the information about versioning for a workflow execution.
     Experimental. Versioning info is experimental and might change in the future.
     
    Protobuf type temporal.api.workflow.v1.WorkflowExecutionVersioningInfo
    See Also:
    Serialized Form
    • Field Detail

      • DEPLOYMENT_FIELD_NUMBER

        public static final int DEPLOYMENT_FIELD_NUMBER
        See Also:
        Constant Field Values
      • VERSIONING_OVERRIDE_FIELD_NUMBER

        public static final int VERSIONING_OVERRIDE_FIELD_NUMBER
        See Also:
        Constant Field Values
      • DEPLOYMENT_TRANSITION_FIELD_NUMBER

        public static final int DEPLOYMENT_TRANSITION_FIELD_NUMBER
        See Also:
        Constant Field Values
    • Method Detail

      • newInstance

        protected java.lang.Object newInstance​(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
        Overrides:
        newInstance in class com.google.protobuf.GeneratedMessageV3
      • getUnknownFields

        public final com.google.protobuf.UnknownFieldSet getUnknownFields()
        Specified by:
        getUnknownFields in interface com.google.protobuf.MessageOrBuilder
        Overrides:
        getUnknownFields in class com.google.protobuf.GeneratedMessageV3
      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3
      • getBehaviorValue

        public int getBehaviorValue()
         Versioning behavior determines how the server should treat this execution when workers are
         upgraded. When present it means this workflow execution is versioned; UNSPECIFIED means
         unversioned. See the comments in `VersioningBehavior` enum for more info about different
         behaviors.
         This field is first set after an execution completes its first workflow task on a versioned
         worker, and set again on completion of every subsequent workflow task.
         Note that `behavior` is overridden by `versioning_override` if the latter is present.
         
        .temporal.api.enums.v1.VersioningBehavior behavior = 1;
        Specified by:
        getBehaviorValue in interface WorkflowExecutionVersioningInfoOrBuilder
        Returns:
        The enum numeric value on the wire for behavior.
      • getBehavior

        public VersioningBehavior getBehavior()
         Versioning behavior determines how the server should treat this execution when workers are
         upgraded. When present it means this workflow execution is versioned; UNSPECIFIED means
         unversioned. See the comments in `VersioningBehavior` enum for more info about different
         behaviors.
         This field is first set after an execution completes its first workflow task on a versioned
         worker, and set again on completion of every subsequent workflow task.
         Note that `behavior` is overridden by `versioning_override` if the latter is present.
         
        .temporal.api.enums.v1.VersioningBehavior behavior = 1;
        Specified by:
        getBehavior in interface WorkflowExecutionVersioningInfoOrBuilder
        Returns:
        The behavior.
      • hasDeployment

        public boolean hasDeployment()
         The worker deployment that completed the last workflow task of this workflow execution. Must
         be present if `behavior` is set. Absent value means no workflow task is completed, or the
         last workflow task was completed by an unversioned worker. Unversioned workers may still send
         a deployment value which will be stored here, so the right way to check if an execution is
         versioned if an execution is versioned or not is via the `behavior` field.
         Note that `deployment` is overridden by `versioning_override` if the latter is present.
         
        .temporal.api.deployment.v1.Deployment deployment = 2;
        Specified by:
        hasDeployment in interface WorkflowExecutionVersioningInfoOrBuilder
        Returns:
        Whether the deployment field is set.
      • getDeployment

        public Deployment getDeployment()
         The worker deployment that completed the last workflow task of this workflow execution. Must
         be present if `behavior` is set. Absent value means no workflow task is completed, or the
         last workflow task was completed by an unversioned worker. Unversioned workers may still send
         a deployment value which will be stored here, so the right way to check if an execution is
         versioned if an execution is versioned or not is via the `behavior` field.
         Note that `deployment` is overridden by `versioning_override` if the latter is present.
         
        .temporal.api.deployment.v1.Deployment deployment = 2;
        Specified by:
        getDeployment in interface WorkflowExecutionVersioningInfoOrBuilder
        Returns:
        The deployment.
      • getDeploymentOrBuilder

        public DeploymentOrBuilder getDeploymentOrBuilder()
         The worker deployment that completed the last workflow task of this workflow execution. Must
         be present if `behavior` is set. Absent value means no workflow task is completed, or the
         last workflow task was completed by an unversioned worker. Unversioned workers may still send
         a deployment value which will be stored here, so the right way to check if an execution is
         versioned if an execution is versioned or not is via the `behavior` field.
         Note that `deployment` is overridden by `versioning_override` if the latter is present.
         
        .temporal.api.deployment.v1.Deployment deployment = 2;
        Specified by:
        getDeploymentOrBuilder in interface WorkflowExecutionVersioningInfoOrBuilder
      • hasVersioningOverride

        public boolean hasVersioningOverride()
         Present if user has set an execution-specific versioning override. This override takes
         precedence over SDK-sent `behavior` (and `deployment` when override is PINNED). An override
         can be set when starting a new execution, as well as afterwards by calling the
         `UpdateWorkflowExecutionOptions` API.
         
        .temporal.api.workflow.v1.VersioningOverride versioning_override = 3;
        Specified by:
        hasVersioningOverride in interface WorkflowExecutionVersioningInfoOrBuilder
        Returns:
        Whether the versioningOverride field is set.
      • getVersioningOverride

        public VersioningOverride getVersioningOverride()
         Present if user has set an execution-specific versioning override. This override takes
         precedence over SDK-sent `behavior` (and `deployment` when override is PINNED). An override
         can be set when starting a new execution, as well as afterwards by calling the
         `UpdateWorkflowExecutionOptions` API.
         
        .temporal.api.workflow.v1.VersioningOverride versioning_override = 3;
        Specified by:
        getVersioningOverride in interface WorkflowExecutionVersioningInfoOrBuilder
        Returns:
        The versioningOverride.
      • getVersioningOverrideOrBuilder

        public VersioningOverrideOrBuilder getVersioningOverrideOrBuilder()
         Present if user has set an execution-specific versioning override. This override takes
         precedence over SDK-sent `behavior` (and `deployment` when override is PINNED). An override
         can be set when starting a new execution, as well as afterwards by calling the
         `UpdateWorkflowExecutionOptions` API.
         
        .temporal.api.workflow.v1.VersioningOverride versioning_override = 3;
        Specified by:
        getVersioningOverrideOrBuilder in interface WorkflowExecutionVersioningInfoOrBuilder
      • hasDeploymentTransition

        public boolean hasDeploymentTransition()
         When present, indicates the workflow is transitioning to a different deployment. Can
         indicate one of the following transitions: unversioned -> versioned, versioned -> versioned
         on a different deployment, or versioned -> unversioned.
         Not applicable to workflows with PINNED behavior.
         When a workflow with AUTO_UPGRADE behavior creates a new workflow task, it will automatically
         start a transition to the task queue's current deployment if the task queue's current
         deployment is different from the workflow's deployment.
         If the AUTO_UPGRADE workflow is stuck due to backlogged activity or workflow tasks, those
         tasks will be redirected to the task queue's current deployment. As soon as a poller from
         that deployment is available to receive the task, the workflow will automatically start a
         transition to that deployment and continue execution there.
         A deployment transition can only exist while there is a pending or started workflow task.
         Once the pending workflow task completes on the transition's target deployment, the
         transition completes and the workflow's `deployment` and `behavior` fields are updated per
         the worker's task completion response.
         Pending activities will not start new attempts during a transition. Once the transition is
         completed, pending activities will start their next attempt on the new deployment.
         
        .temporal.api.workflow.v1.DeploymentTransition deployment_transition = 4;
        Specified by:
        hasDeploymentTransition in interface WorkflowExecutionVersioningInfoOrBuilder
        Returns:
        Whether the deploymentTransition field is set.
      • getDeploymentTransition

        public DeploymentTransition getDeploymentTransition()
         When present, indicates the workflow is transitioning to a different deployment. Can
         indicate one of the following transitions: unversioned -> versioned, versioned -> versioned
         on a different deployment, or versioned -> unversioned.
         Not applicable to workflows with PINNED behavior.
         When a workflow with AUTO_UPGRADE behavior creates a new workflow task, it will automatically
         start a transition to the task queue's current deployment if the task queue's current
         deployment is different from the workflow's deployment.
         If the AUTO_UPGRADE workflow is stuck due to backlogged activity or workflow tasks, those
         tasks will be redirected to the task queue's current deployment. As soon as a poller from
         that deployment is available to receive the task, the workflow will automatically start a
         transition to that deployment and continue execution there.
         A deployment transition can only exist while there is a pending or started workflow task.
         Once the pending workflow task completes on the transition's target deployment, the
         transition completes and the workflow's `deployment` and `behavior` fields are updated per
         the worker's task completion response.
         Pending activities will not start new attempts during a transition. Once the transition is
         completed, pending activities will start their next attempt on the new deployment.
         
        .temporal.api.workflow.v1.DeploymentTransition deployment_transition = 4;
        Specified by:
        getDeploymentTransition in interface WorkflowExecutionVersioningInfoOrBuilder
        Returns:
        The deploymentTransition.
      • getDeploymentTransitionOrBuilder

        public DeploymentTransitionOrBuilder getDeploymentTransitionOrBuilder()
         When present, indicates the workflow is transitioning to a different deployment. Can
         indicate one of the following transitions: unversioned -> versioned, versioned -> versioned
         on a different deployment, or versioned -> unversioned.
         Not applicable to workflows with PINNED behavior.
         When a workflow with AUTO_UPGRADE behavior creates a new workflow task, it will automatically
         start a transition to the task queue's current deployment if the task queue's current
         deployment is different from the workflow's deployment.
         If the AUTO_UPGRADE workflow is stuck due to backlogged activity or workflow tasks, those
         tasks will be redirected to the task queue's current deployment. As soon as a poller from
         that deployment is available to receive the task, the workflow will automatically start a
         transition to that deployment and continue execution there.
         A deployment transition can only exist while there is a pending or started workflow task.
         Once the pending workflow task completes on the transition's target deployment, the
         transition completes and the workflow's `deployment` and `behavior` fields are updated per
         the worker's task completion response.
         Pending activities will not start new attempts during a transition. Once the transition is
         completed, pending activities will start their next attempt on the new deployment.
         
        .temporal.api.workflow.v1.DeploymentTransition deployment_transition = 4;
        Specified by:
        getDeploymentTransitionOrBuilder in interface WorkflowExecutionVersioningInfoOrBuilder
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws java.io.IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessageV3
        Throws:
        java.io.IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessageV3
      • equals

        public boolean equals​(java.lang.Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static WorkflowExecutionVersioningInfo parseFrom​(java.nio.ByteBuffer data)
                                                         throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static WorkflowExecutionVersioningInfo parseFrom​(java.nio.ByteBuffer data,
                                                                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                         throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static WorkflowExecutionVersioningInfo parseFrom​(com.google.protobuf.ByteString data)
                                                         throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static WorkflowExecutionVersioningInfo parseFrom​(com.google.protobuf.ByteString data,
                                                                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                         throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static WorkflowExecutionVersioningInfo parseFrom​(byte[] data)
                                                         throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static WorkflowExecutionVersioningInfo parseFrom​(byte[] data,
                                                                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                         throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static WorkflowExecutionVersioningInfo parseFrom​(java.io.InputStream input)
                                                         throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static WorkflowExecutionVersioningInfo parseFrom​(java.io.InputStream input,
                                                                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                         throws java.io.IOException
        Throws:
        java.io.IOException
      • parseDelimitedFrom

        public static WorkflowExecutionVersioningInfo parseDelimitedFrom​(java.io.InputStream input)
                                                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • parseDelimitedFrom

        public static WorkflowExecutionVersioningInfo parseDelimitedFrom​(java.io.InputStream input,
                                                                         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static WorkflowExecutionVersioningInfo parseFrom​(com.google.protobuf.CodedInputStream input)
                                                         throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static WorkflowExecutionVersioningInfo parseFrom​(com.google.protobuf.CodedInputStream input,
                                                                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                         throws java.io.IOException
        Throws:
        java.io.IOException
      • newBuilderForType

        public WorkflowExecutionVersioningInfo.Builder newBuilderForType()
        Specified by:
        newBuilderForType in interface com.google.protobuf.Message
        Specified by:
        newBuilderForType in interface com.google.protobuf.MessageLite
      • toBuilder

        public WorkflowExecutionVersioningInfo.Builder toBuilder()
        Specified by:
        toBuilder in interface com.google.protobuf.Message
        Specified by:
        toBuilder in interface com.google.protobuf.MessageLite
      • newBuilderForType

        protected WorkflowExecutionVersioningInfo.Builder newBuilderForType​(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
        Specified by:
        newBuilderForType in class com.google.protobuf.GeneratedMessageV3
      • getParserForType

        public com.google.protobuf.Parser<WorkflowExecutionVersioningInfo> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessageV3
      • getDefaultInstanceForType

        public WorkflowExecutionVersioningInfo getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder