/* * 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 ecs-2014-11-13.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.ECS.Model { /// /// The Service Connect configuration of your Amazon ECS service. The configuration for /// this service to discover and connect to services, and be discovered by, and connected /// from, other services within a namespace. /// /// /// /// Tasks that run in a namespace can use short names to connect to services in the namespace. /// Tasks can connect to services across all of the clusters in the namespace. Tasks connect /// through a managed proxy container that collects logs and metrics for increased visibility. /// Only the tasks that Amazon ECS services create are supported with Service Connect. /// For more information, see Service /// Connect in the Amazon Elastic Container Service Developer Guide. /// /// public partial class ServiceConnectConfiguration { private bool? _enabled; private LogConfiguration _logConfiguration; private string _awsNamespace; private List _services = new List(); /// /// Gets and sets the property Enabled. /// /// Specifies whether to use Service Connect with this service. /// /// [AWSProperty(Required=true)] public bool Enabled { get { return this._enabled.GetValueOrDefault(); } set { this._enabled = value; } } // Check to see if Enabled property is set internal bool IsSetEnabled() { return this._enabled.HasValue; } /// /// Gets and sets the property LogConfiguration. /// public LogConfiguration LogConfiguration { get { return this._logConfiguration; } set { this._logConfiguration = value; } } // Check to see if LogConfiguration property is set internal bool IsSetLogConfiguration() { return this._logConfiguration != null; } /// /// Gets and sets the property Namespace. /// /// The namespace name or full Amazon Resource Name (ARN) of the Cloud Map namespace for /// use with Service Connect. The namespace must be in the same Amazon Web Services Region /// as the Amazon ECS service and cluster. The type of namespace doesn't affect Service /// Connect. For more information about Cloud Map, see Working /// with Services in the Cloud Map Developer Guide. /// /// public string Namespace { get { return this._awsNamespace; } set { this._awsNamespace = value; } } // Check to see if Namespace property is set internal bool IsSetNamespace() { return this._awsNamespace != null; } /// /// Gets and sets the property Services. /// /// The list of Service Connect service objects. These are names and aliases (also known /// as endpoints) that are used by other Amazon ECS services to connect to this service. /// /// /// /// /// This field is not required for a "client" Amazon ECS service that's a member of a /// namespace only to connect to other services within the namespace. An example of this /// would be a frontend application that accepts incoming requests from either a load /// balancer that's attached to the service or by other means. /// /// /// /// An object selects a port from the task definition, assigns a name for the Cloud Map /// service, and a list of aliases (endpoints) and ports for client applications to refer /// to this service. /// /// public List Services { get { return this._services; } set { this._services = value; } } // Check to see if Services property is set internal bool IsSetServices() { return this._services != null && this._services.Count > 0; } } }