/* * 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 datapipeline-2012-10-29.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.DataPipeline.Model { /// /// Container for the parameters to the PollForTask operation. /// Task runners call PollForTask to receive a task to perform from AWS Data /// Pipeline. The task runner specifies which tasks it can perform by setting a value /// for the workerGroup parameter. The task returned can come from any of /// the pipelines that match the workerGroup value passed in by the task /// runner and that was launched using the IAM user credentials specified by the task /// runner. /// /// /// /// If tasks are ready in the work queue, PollForTask returns a response /// immediately. If no tasks are available in the queue, PollForTask uses /// long-polling and holds on to a poll connection for up to a 90 seconds, during which /// time the first newly scheduled task is handed to the task runner. To accomodate this, /// set the socket timeout in your task runner to 90 seconds. The task runner should not /// call PollForTask again on the same workerGroup until it /// receives a response, and this can take up to 90 seconds. /// /// public partial class PollForTaskRequest : AmazonDataPipelineRequest { private string _hostname; private InstanceIdentity _instanceIdentity; private string _workerGroup; /// /// Gets and sets the property Hostname. /// /// The public DNS name of the calling task runner. /// /// [AWSProperty(Min=1, Max=1024)] public string Hostname { get { return this._hostname; } set { this._hostname = value; } } // Check to see if Hostname property is set internal bool IsSetHostname() { return this._hostname != null; } /// /// Gets and sets the property InstanceIdentity. /// /// Identity information for the EC2 instance that is hosting the task runner. You can /// get this value from the instance using http://169.254.169.254/latest/meta-data/instance-id. /// For more information, see Instance /// Metadata in the Amazon Elastic Compute Cloud User Guide. Passing in this /// value proves that your task runner is running on an EC2 instance, and ensures the /// proper AWS Data Pipeline service charges are applied to your pipeline. /// /// public InstanceIdentity InstanceIdentity { get { return this._instanceIdentity; } set { this._instanceIdentity = value; } } // Check to see if InstanceIdentity property is set internal bool IsSetInstanceIdentity() { return this._instanceIdentity != null; } /// /// Gets and sets the property WorkerGroup. /// /// The type of task the task runner is configured to accept and process. The worker group /// is set as a field on objects in the pipeline when they are created. You can only specify /// a single value for workerGroup in the call to PollForTask. /// There are no wildcard values permitted in workerGroup; the string must /// be an exact, case-sensitive, match. /// /// [AWSProperty(Required=true, Min=0, Max=1024)] public string WorkerGroup { get { return this._workerGroup; } set { this._workerGroup = value; } } // Check to see if WorkerGroup property is set internal bool IsSetWorkerGroup() { return this._workerGroup != null; } } }