/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace ServiceDiscovery { namespace Model { /** *

In a response to a DiscoverInstances * request, HttpInstanceSummary contains information about one * instance that matches the values that you specified in the * request.

See Also:

AWS * API Reference

*/ class HttpInstanceSummary { public: AWS_SERVICEDISCOVERY_API HttpInstanceSummary(); AWS_SERVICEDISCOVERY_API HttpInstanceSummary(Aws::Utils::Json::JsonView jsonValue); AWS_SERVICEDISCOVERY_API HttpInstanceSummary& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SERVICEDISCOVERY_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The ID of an instance that matches the values that you specified in the * request.

*/ inline const Aws::String& GetInstanceId() const{ return m_instanceId; } /** *

The ID of an instance that matches the values that you specified in the * request.

*/ inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; } /** *

The ID of an instance that matches the values that you specified in the * request.

*/ inline void SetInstanceId(const Aws::String& value) { m_instanceIdHasBeenSet = true; m_instanceId = value; } /** *

The ID of an instance that matches the values that you specified in the * request.

*/ inline void SetInstanceId(Aws::String&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::move(value); } /** *

The ID of an instance that matches the values that you specified in the * request.

*/ inline void SetInstanceId(const char* value) { m_instanceIdHasBeenSet = true; m_instanceId.assign(value); } /** *

The ID of an instance that matches the values that you specified in the * request.

*/ inline HttpInstanceSummary& WithInstanceId(const Aws::String& value) { SetInstanceId(value); return *this;} /** *

The ID of an instance that matches the values that you specified in the * request.

*/ inline HttpInstanceSummary& WithInstanceId(Aws::String&& value) { SetInstanceId(std::move(value)); return *this;} /** *

The ID of an instance that matches the values that you specified in the * request.

*/ inline HttpInstanceSummary& WithInstanceId(const char* value) { SetInstanceId(value); return *this;} /** *

The HttpName name of the * namespace. It's found in the HttpProperties member of the * Properties member of the namespace.

*/ inline const Aws::String& GetNamespaceName() const{ return m_namespaceName; } /** *

The HttpName name of the * namespace. It's found in the HttpProperties member of the * Properties member of the namespace.

*/ inline bool NamespaceNameHasBeenSet() const { return m_namespaceNameHasBeenSet; } /** *

The HttpName name of the * namespace. It's found in the HttpProperties member of the * Properties member of the namespace.

*/ inline void SetNamespaceName(const Aws::String& value) { m_namespaceNameHasBeenSet = true; m_namespaceName = value; } /** *

The HttpName name of the * namespace. It's found in the HttpProperties member of the * Properties member of the namespace.

*/ inline void SetNamespaceName(Aws::String&& value) { m_namespaceNameHasBeenSet = true; m_namespaceName = std::move(value); } /** *

The HttpName name of the * namespace. It's found in the HttpProperties member of the * Properties member of the namespace.

*/ inline void SetNamespaceName(const char* value) { m_namespaceNameHasBeenSet = true; m_namespaceName.assign(value); } /** *

The HttpName name of the * namespace. It's found in the HttpProperties member of the * Properties member of the namespace.

*/ inline HttpInstanceSummary& WithNamespaceName(const Aws::String& value) { SetNamespaceName(value); return *this;} /** *

The HttpName name of the * namespace. It's found in the HttpProperties member of the * Properties member of the namespace.

*/ inline HttpInstanceSummary& WithNamespaceName(Aws::String&& value) { SetNamespaceName(std::move(value)); return *this;} /** *

The HttpName name of the * namespace. It's found in the HttpProperties member of the * Properties member of the namespace.

*/ inline HttpInstanceSummary& WithNamespaceName(const char* value) { SetNamespaceName(value); return *this;} /** *

The name of the service that you specified when you registered the * instance.

*/ inline const Aws::String& GetServiceName() const{ return m_serviceName; } /** *

The name of the service that you specified when you registered the * instance.

*/ inline bool ServiceNameHasBeenSet() const { return m_serviceNameHasBeenSet; } /** *

The name of the service that you specified when you registered the * instance.

*/ inline void SetServiceName(const Aws::String& value) { m_serviceNameHasBeenSet = true; m_serviceName = value; } /** *

The name of the service that you specified when you registered the * instance.

*/ inline void SetServiceName(Aws::String&& value) { m_serviceNameHasBeenSet = true; m_serviceName = std::move(value); } /** *

The name of the service that you specified when you registered the * instance.

*/ inline void SetServiceName(const char* value) { m_serviceNameHasBeenSet = true; m_serviceName.assign(value); } /** *

The name of the service that you specified when you registered the * instance.

*/ inline HttpInstanceSummary& WithServiceName(const Aws::String& value) { SetServiceName(value); return *this;} /** *

The name of the service that you specified when you registered the * instance.

*/ inline HttpInstanceSummary& WithServiceName(Aws::String&& value) { SetServiceName(std::move(value)); return *this;} /** *

The name of the service that you specified when you registered the * instance.

*/ inline HttpInstanceSummary& WithServiceName(const char* value) { SetServiceName(value); return *this;} /** *

If you configured health checking in the service, the current health status * of the service instance.

*/ inline const HealthStatus& GetHealthStatus() const{ return m_healthStatus; } /** *

If you configured health checking in the service, the current health status * of the service instance.

*/ inline bool HealthStatusHasBeenSet() const { return m_healthStatusHasBeenSet; } /** *

If you configured health checking in the service, the current health status * of the service instance.

*/ inline void SetHealthStatus(const HealthStatus& value) { m_healthStatusHasBeenSet = true; m_healthStatus = value; } /** *

If you configured health checking in the service, the current health status * of the service instance.

*/ inline void SetHealthStatus(HealthStatus&& value) { m_healthStatusHasBeenSet = true; m_healthStatus = std::move(value); } /** *

If you configured health checking in the service, the current health status * of the service instance.

*/ inline HttpInstanceSummary& WithHealthStatus(const HealthStatus& value) { SetHealthStatus(value); return *this;} /** *

If you configured health checking in the service, the current health status * of the service instance.

*/ inline HttpInstanceSummary& WithHealthStatus(HealthStatus&& value) { SetHealthStatus(std::move(value)); return *this;} /** *

If you included any attributes when you registered the instance, the values * of those attributes.

*/ inline const Aws::Map& GetAttributes() const{ return m_attributes; } /** *

If you included any attributes when you registered the instance, the values * of those attributes.

*/ inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; } /** *

If you included any attributes when you registered the instance, the values * of those attributes.

*/ inline void SetAttributes(const Aws::Map& value) { m_attributesHasBeenSet = true; m_attributes = value; } /** *

If you included any attributes when you registered the instance, the values * of those attributes.

*/ inline void SetAttributes(Aws::Map&& value) { m_attributesHasBeenSet = true; m_attributes = std::move(value); } /** *

If you included any attributes when you registered the instance, the values * of those attributes.

*/ inline HttpInstanceSummary& WithAttributes(const Aws::Map& value) { SetAttributes(value); return *this;} /** *

If you included any attributes when you registered the instance, the values * of those attributes.

*/ inline HttpInstanceSummary& WithAttributes(Aws::Map&& value) { SetAttributes(std::move(value)); return *this;} /** *

If you included any attributes when you registered the instance, the values * of those attributes.

*/ inline HttpInstanceSummary& AddAttributes(const Aws::String& key, const Aws::String& value) { m_attributesHasBeenSet = true; m_attributes.emplace(key, value); return *this; } /** *

If you included any attributes when you registered the instance, the values * of those attributes.

*/ inline HttpInstanceSummary& AddAttributes(Aws::String&& key, const Aws::String& value) { m_attributesHasBeenSet = true; m_attributes.emplace(std::move(key), value); return *this; } /** *

If you included any attributes when you registered the instance, the values * of those attributes.

*/ inline HttpInstanceSummary& AddAttributes(const Aws::String& key, Aws::String&& value) { m_attributesHasBeenSet = true; m_attributes.emplace(key, std::move(value)); return *this; } /** *

If you included any attributes when you registered the instance, the values * of those attributes.

*/ inline HttpInstanceSummary& AddAttributes(Aws::String&& key, Aws::String&& value) { m_attributesHasBeenSet = true; m_attributes.emplace(std::move(key), std::move(value)); return *this; } /** *

If you included any attributes when you registered the instance, the values * of those attributes.

*/ inline HttpInstanceSummary& AddAttributes(const char* key, Aws::String&& value) { m_attributesHasBeenSet = true; m_attributes.emplace(key, std::move(value)); return *this; } /** *

If you included any attributes when you registered the instance, the values * of those attributes.

*/ inline HttpInstanceSummary& AddAttributes(Aws::String&& key, const char* value) { m_attributesHasBeenSet = true; m_attributes.emplace(std::move(key), value); return *this; } /** *

If you included any attributes when you registered the instance, the values * of those attributes.

*/ inline HttpInstanceSummary& AddAttributes(const char* key, const char* value) { m_attributesHasBeenSet = true; m_attributes.emplace(key, value); return *this; } private: Aws::String m_instanceId; bool m_instanceIdHasBeenSet = false; Aws::String m_namespaceName; bool m_namespaceNameHasBeenSet = false; Aws::String m_serviceName; bool m_serviceNameHasBeenSet = false; HealthStatus m_healthStatus; bool m_healthStatusHasBeenSet = false; Aws::Map m_attributes; bool m_attributesHasBeenSet = false; }; } // namespace Model } // namespace ServiceDiscovery } // namespace Aws