/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the states-2016-11-23.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.StepFunctions.Model { /// /// Container for the parameters to the UpdateStateMachine operation. /// Updates an existing state machine by modifying its definition, roleArn, /// or loggingConfiguration. Running executions will continue to use the /// previous definition and roleArn. You must include at least /// one of definition or roleArn or you will receive a MissingRequiredParameter /// error. /// /// /// /// A qualified state machine ARN refers to a Distributed Map state defined within /// a state machine. For example, the qualified state machine ARN arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel /// refers to a Distributed Map state with a label mapStateLabel in /// the state machine named stateMachineName. /// /// /// /// A qualified state machine ARN can either refer to a Distributed Map state defined /// within a state machine, a version ARN, or an alias ARN. /// /// /// /// The following are some examples of qualified and unqualified state machine ARNs: /// /// /// /// After you update your state machine, you can set the publish parameter /// to true in the same action to publish a new version. /// This way, you can opt-in to strict versioning of your state machine. /// /// /// /// Step Functions assigns monotonically increasing integers for state machine versions, /// starting at version number 1. /// /// /// /// All StartExecution calls within a few seconds use the updated definition /// and roleArn. Executions started immediately after you call UpdateStateMachine /// may use the previous state machine definition and roleArn. /// /// /// /// public partial class UpdateStateMachineRequest : AmazonStepFunctionsRequest { private string _definition; private LoggingConfiguration _loggingConfiguration; private bool? _publish; private string _roleArn; private string _stateMachineArn; private TracingConfiguration _tracingConfiguration; private string _versionDescription; /// /// Gets and sets the property Definition. /// /// The Amazon States Language definition of the state machine. See Amazon /// States Language. /// /// [AWSProperty(Sensitive=true, Min=1, Max=1048576)] public string Definition { get { return this._definition; } set { this._definition = value; } } // Check to see if Definition property is set internal bool IsSetDefinition() { return this._definition != null; } /// /// Gets and sets the property LoggingConfiguration. /// /// Use the LoggingConfiguration data type to set CloudWatch Logs options. /// /// public LoggingConfiguration LoggingConfiguration { get { return this._loggingConfiguration; } set { this._loggingConfiguration = value; } } // Check to see if LoggingConfiguration property is set internal bool IsSetLoggingConfiguration() { return this._loggingConfiguration != null; } /// /// Gets and sets the property Publish. /// /// Specifies whether the state machine version is published. The default is false. /// To publish a version after updating the state machine, set publish to /// true. /// /// public bool Publish { get { return this._publish.GetValueOrDefault(); } set { this._publish = value; } } // Check to see if Publish property is set internal bool IsSetPublish() { return this._publish.HasValue; } /// /// Gets and sets the property RoleArn. /// /// The Amazon Resource Name (ARN) of the IAM role of the state machine. /// /// [AWSProperty(Min=1, Max=256)] public string RoleArn { get { return this._roleArn; } set { this._roleArn = value; } } // Check to see if RoleArn property is set internal bool IsSetRoleArn() { return this._roleArn != null; } /// /// Gets and sets the property StateMachineArn. /// /// The Amazon Resource Name (ARN) of the state machine. /// /// [AWSProperty(Required=true, Min=1, Max=256)] public string StateMachineArn { get { return this._stateMachineArn; } set { this._stateMachineArn = value; } } // Check to see if StateMachineArn property is set internal bool IsSetStateMachineArn() { return this._stateMachineArn != null; } /// /// Gets and sets the property TracingConfiguration. /// /// Selects whether X-Ray tracing is enabled. /// /// public TracingConfiguration TracingConfiguration { get { return this._tracingConfiguration; } set { this._tracingConfiguration = value; } } // Check to see if TracingConfiguration property is set internal bool IsSetTracingConfiguration() { return this._tracingConfiguration != null; } /// /// Gets and sets the property VersionDescription. /// /// An optional description of the state machine version to publish. /// /// /// /// You can only specify the versionDescription parameter if you've set publish /// to true. /// /// [AWSProperty(Sensitive=true, Max=256)] public string VersionDescription { get { return this._versionDescription; } set { this._versionDescription = value; } } // Check to see if VersionDescription property is set internal bool IsSetVersionDescription() { return this._versionDescription != null; } } }