/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once /* Generic header includes */ #include #include #include #include #include #include #include #include #include /* End of generic header includes */ /* Service model headers required in IoTSiteWiseClient header */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include /* End of service model headers required in IoTSiteWiseClient header */ namespace Aws { namespace Http { class HttpClient; class HttpClientFactory; } // namespace Http namespace Utils { template< typename R, typename E> class Outcome; namespace Threading { class Executor; } // namespace Threading } // namespace Utils namespace Auth { class AWSCredentials; class AWSCredentialsProvider; } // namespace Auth namespace Client { class RetryStrategy; } // namespace Client namespace IoTSiteWise { using IoTSiteWiseClientConfiguration = Aws::Client::GenericClientConfiguration; using IoTSiteWiseEndpointProviderBase = Aws::IoTSiteWise::Endpoint::IoTSiteWiseEndpointProviderBase; using IoTSiteWiseEndpointProvider = Aws::IoTSiteWise::Endpoint::IoTSiteWiseEndpointProvider; namespace Model { /* Service model forward declarations required in IoTSiteWiseClient header */ class AssociateAssetsRequest; class AssociateTimeSeriesToAssetPropertyRequest; class BatchAssociateProjectAssetsRequest; class BatchDisassociateProjectAssetsRequest; class BatchGetAssetPropertyAggregatesRequest; class BatchGetAssetPropertyValueRequest; class BatchGetAssetPropertyValueHistoryRequest; class BatchPutAssetPropertyValueRequest; class CreateAccessPolicyRequest; class CreateAssetRequest; class CreateAssetModelRequest; class CreateBulkImportJobRequest; class CreateDashboardRequest; class CreateGatewayRequest; class CreatePortalRequest; class CreateProjectRequest; class DeleteAccessPolicyRequest; class DeleteAssetRequest; class DeleteAssetModelRequest; class DeleteDashboardRequest; class DeleteGatewayRequest; class DeletePortalRequest; class DeleteProjectRequest; class DeleteTimeSeriesRequest; class DescribeAccessPolicyRequest; class DescribeAssetRequest; class DescribeAssetModelRequest; class DescribeAssetPropertyRequest; class DescribeBulkImportJobRequest; class DescribeDashboardRequest; class DescribeDefaultEncryptionConfigurationRequest; class DescribeGatewayRequest; class DescribeGatewayCapabilityConfigurationRequest; class DescribeLoggingOptionsRequest; class DescribePortalRequest; class DescribeProjectRequest; class DescribeStorageConfigurationRequest; class DescribeTimeSeriesRequest; class DisassociateAssetsRequest; class DisassociateTimeSeriesFromAssetPropertyRequest; class GetAssetPropertyAggregatesRequest; class GetAssetPropertyValueRequest; class GetAssetPropertyValueHistoryRequest; class GetInterpolatedAssetPropertyValuesRequest; class ListAccessPoliciesRequest; class ListAssetModelPropertiesRequest; class ListAssetModelsRequest; class ListAssetPropertiesRequest; class ListAssetRelationshipsRequest; class ListAssetsRequest; class ListAssociatedAssetsRequest; class ListBulkImportJobsRequest; class ListDashboardsRequest; class ListGatewaysRequest; class ListPortalsRequest; class ListProjectAssetsRequest; class ListProjectsRequest; class ListTagsForResourceRequest; class ListTimeSeriesRequest; class PutDefaultEncryptionConfigurationRequest; class PutLoggingOptionsRequest; class PutStorageConfigurationRequest; class TagResourceRequest; class UntagResourceRequest; class UpdateAccessPolicyRequest; class UpdateAssetRequest; class UpdateAssetModelRequest; class UpdateAssetPropertyRequest; class UpdateDashboardRequest; class UpdateGatewayRequest; class UpdateGatewayCapabilityConfigurationRequest; class UpdatePortalRequest; class UpdateProjectRequest; /* End of service model forward declarations required in IoTSiteWiseClient header */ /* Service model Outcome class definitions */ typedef Aws::Utils::Outcome AssociateAssetsOutcome; typedef Aws::Utils::Outcome AssociateTimeSeriesToAssetPropertyOutcome; typedef Aws::Utils::Outcome BatchAssociateProjectAssetsOutcome; typedef Aws::Utils::Outcome BatchDisassociateProjectAssetsOutcome; typedef Aws::Utils::Outcome BatchGetAssetPropertyAggregatesOutcome; typedef Aws::Utils::Outcome BatchGetAssetPropertyValueOutcome; typedef Aws::Utils::Outcome BatchGetAssetPropertyValueHistoryOutcome; typedef Aws::Utils::Outcome BatchPutAssetPropertyValueOutcome; typedef Aws::Utils::Outcome CreateAccessPolicyOutcome; typedef Aws::Utils::Outcome CreateAssetOutcome; typedef Aws::Utils::Outcome CreateAssetModelOutcome; typedef Aws::Utils::Outcome CreateBulkImportJobOutcome; typedef Aws::Utils::Outcome CreateDashboardOutcome; typedef Aws::Utils::Outcome CreateGatewayOutcome; typedef Aws::Utils::Outcome CreatePortalOutcome; typedef Aws::Utils::Outcome CreateProjectOutcome; typedef Aws::Utils::Outcome DeleteAccessPolicyOutcome; typedef Aws::Utils::Outcome DeleteAssetOutcome; typedef Aws::Utils::Outcome DeleteAssetModelOutcome; typedef Aws::Utils::Outcome DeleteDashboardOutcome; typedef Aws::Utils::Outcome DeleteGatewayOutcome; typedef Aws::Utils::Outcome DeletePortalOutcome; typedef Aws::Utils::Outcome DeleteProjectOutcome; typedef Aws::Utils::Outcome DeleteTimeSeriesOutcome; typedef Aws::Utils::Outcome DescribeAccessPolicyOutcome; typedef Aws::Utils::Outcome DescribeAssetOutcome; typedef Aws::Utils::Outcome DescribeAssetModelOutcome; typedef Aws::Utils::Outcome DescribeAssetPropertyOutcome; typedef Aws::Utils::Outcome DescribeBulkImportJobOutcome; typedef Aws::Utils::Outcome DescribeDashboardOutcome; typedef Aws::Utils::Outcome DescribeDefaultEncryptionConfigurationOutcome; typedef Aws::Utils::Outcome DescribeGatewayOutcome; typedef Aws::Utils::Outcome DescribeGatewayCapabilityConfigurationOutcome; typedef Aws::Utils::Outcome DescribeLoggingOptionsOutcome; typedef Aws::Utils::Outcome DescribePortalOutcome; typedef Aws::Utils::Outcome DescribeProjectOutcome; typedef Aws::Utils::Outcome DescribeStorageConfigurationOutcome; typedef Aws::Utils::Outcome DescribeTimeSeriesOutcome; typedef Aws::Utils::Outcome DisassociateAssetsOutcome; typedef Aws::Utils::Outcome DisassociateTimeSeriesFromAssetPropertyOutcome; typedef Aws::Utils::Outcome GetAssetPropertyAggregatesOutcome; typedef Aws::Utils::Outcome GetAssetPropertyValueOutcome; typedef Aws::Utils::Outcome GetAssetPropertyValueHistoryOutcome; typedef Aws::Utils::Outcome GetInterpolatedAssetPropertyValuesOutcome; typedef Aws::Utils::Outcome ListAccessPoliciesOutcome; typedef Aws::Utils::Outcome ListAssetModelPropertiesOutcome; typedef Aws::Utils::Outcome ListAssetModelsOutcome; typedef Aws::Utils::Outcome ListAssetPropertiesOutcome; typedef Aws::Utils::Outcome ListAssetRelationshipsOutcome; typedef Aws::Utils::Outcome ListAssetsOutcome; typedef Aws::Utils::Outcome ListAssociatedAssetsOutcome; typedef Aws::Utils::Outcome ListBulkImportJobsOutcome; typedef Aws::Utils::Outcome ListDashboardsOutcome; typedef Aws::Utils::Outcome ListGatewaysOutcome; typedef Aws::Utils::Outcome ListPortalsOutcome; typedef Aws::Utils::Outcome ListProjectAssetsOutcome; typedef Aws::Utils::Outcome ListProjectsOutcome; typedef Aws::Utils::Outcome ListTagsForResourceOutcome; typedef Aws::Utils::Outcome ListTimeSeriesOutcome; typedef Aws::Utils::Outcome PutDefaultEncryptionConfigurationOutcome; typedef Aws::Utils::Outcome PutLoggingOptionsOutcome; typedef Aws::Utils::Outcome PutStorageConfigurationOutcome; typedef Aws::Utils::Outcome TagResourceOutcome; typedef Aws::Utils::Outcome UntagResourceOutcome; typedef Aws::Utils::Outcome UpdateAccessPolicyOutcome; typedef Aws::Utils::Outcome UpdateAssetOutcome; typedef Aws::Utils::Outcome UpdateAssetModelOutcome; typedef Aws::Utils::Outcome UpdateAssetPropertyOutcome; typedef Aws::Utils::Outcome UpdateDashboardOutcome; typedef Aws::Utils::Outcome UpdateGatewayOutcome; typedef Aws::Utils::Outcome UpdateGatewayCapabilityConfigurationOutcome; typedef Aws::Utils::Outcome UpdatePortalOutcome; typedef Aws::Utils::Outcome UpdateProjectOutcome; /* End of service model Outcome class definitions */ /* Service model Outcome callable definitions */ typedef std::future AssociateAssetsOutcomeCallable; typedef std::future AssociateTimeSeriesToAssetPropertyOutcomeCallable; typedef std::future BatchAssociateProjectAssetsOutcomeCallable; typedef std::future BatchDisassociateProjectAssetsOutcomeCallable; typedef std::future BatchGetAssetPropertyAggregatesOutcomeCallable; typedef std::future BatchGetAssetPropertyValueOutcomeCallable; typedef std::future BatchGetAssetPropertyValueHistoryOutcomeCallable; typedef std::future BatchPutAssetPropertyValueOutcomeCallable; typedef std::future CreateAccessPolicyOutcomeCallable; typedef std::future CreateAssetOutcomeCallable; typedef std::future CreateAssetModelOutcomeCallable; typedef std::future CreateBulkImportJobOutcomeCallable; typedef std::future CreateDashboardOutcomeCallable; typedef std::future CreateGatewayOutcomeCallable; typedef std::future CreatePortalOutcomeCallable; typedef std::future CreateProjectOutcomeCallable; typedef std::future DeleteAccessPolicyOutcomeCallable; typedef std::future DeleteAssetOutcomeCallable; typedef std::future DeleteAssetModelOutcomeCallable; typedef std::future DeleteDashboardOutcomeCallable; typedef std::future DeleteGatewayOutcomeCallable; typedef std::future DeletePortalOutcomeCallable; typedef std::future DeleteProjectOutcomeCallable; typedef std::future DeleteTimeSeriesOutcomeCallable; typedef std::future DescribeAccessPolicyOutcomeCallable; typedef std::future DescribeAssetOutcomeCallable; typedef std::future DescribeAssetModelOutcomeCallable; typedef std::future DescribeAssetPropertyOutcomeCallable; typedef std::future DescribeBulkImportJobOutcomeCallable; typedef std::future DescribeDashboardOutcomeCallable; typedef std::future DescribeDefaultEncryptionConfigurationOutcomeCallable; typedef std::future DescribeGatewayOutcomeCallable; typedef std::future DescribeGatewayCapabilityConfigurationOutcomeCallable; typedef std::future DescribeLoggingOptionsOutcomeCallable; typedef std::future DescribePortalOutcomeCallable; typedef std::future DescribeProjectOutcomeCallable; typedef std::future DescribeStorageConfigurationOutcomeCallable; typedef std::future DescribeTimeSeriesOutcomeCallable; typedef std::future DisassociateAssetsOutcomeCallable; typedef std::future DisassociateTimeSeriesFromAssetPropertyOutcomeCallable; typedef std::future GetAssetPropertyAggregatesOutcomeCallable; typedef std::future GetAssetPropertyValueOutcomeCallable; typedef std::future GetAssetPropertyValueHistoryOutcomeCallable; typedef std::future GetInterpolatedAssetPropertyValuesOutcomeCallable; typedef std::future ListAccessPoliciesOutcomeCallable; typedef std::future ListAssetModelPropertiesOutcomeCallable; typedef std::future ListAssetModelsOutcomeCallable; typedef std::future ListAssetPropertiesOutcomeCallable; typedef std::future ListAssetRelationshipsOutcomeCallable; typedef std::future ListAssetsOutcomeCallable; typedef std::future ListAssociatedAssetsOutcomeCallable; typedef std::future ListBulkImportJobsOutcomeCallable; typedef std::future ListDashboardsOutcomeCallable; typedef std::future ListGatewaysOutcomeCallable; typedef std::future ListPortalsOutcomeCallable; typedef std::future ListProjectAssetsOutcomeCallable; typedef std::future ListProjectsOutcomeCallable; typedef std::future ListTagsForResourceOutcomeCallable; typedef std::future ListTimeSeriesOutcomeCallable; typedef std::future PutDefaultEncryptionConfigurationOutcomeCallable; typedef std::future PutLoggingOptionsOutcomeCallable; typedef std::future PutStorageConfigurationOutcomeCallable; typedef std::future TagResourceOutcomeCallable; typedef std::future UntagResourceOutcomeCallable; typedef std::future UpdateAccessPolicyOutcomeCallable; typedef std::future UpdateAssetOutcomeCallable; typedef std::future UpdateAssetModelOutcomeCallable; typedef std::future UpdateAssetPropertyOutcomeCallable; typedef std::future UpdateDashboardOutcomeCallable; typedef std::future UpdateGatewayOutcomeCallable; typedef std::future UpdateGatewayCapabilityConfigurationOutcomeCallable; typedef std::future UpdatePortalOutcomeCallable; typedef std::future UpdateProjectOutcomeCallable; /* End of service model Outcome callable definitions */ } // namespace Model class IoTSiteWiseClient; /* Service model async handlers definitions */ typedef std::function&) > AssociateAssetsResponseReceivedHandler; typedef std::function&) > AssociateTimeSeriesToAssetPropertyResponseReceivedHandler; typedef std::function&) > BatchAssociateProjectAssetsResponseReceivedHandler; typedef std::function&) > BatchDisassociateProjectAssetsResponseReceivedHandler; typedef std::function&) > BatchGetAssetPropertyAggregatesResponseReceivedHandler; typedef std::function&) > BatchGetAssetPropertyValueResponseReceivedHandler; typedef std::function&) > BatchGetAssetPropertyValueHistoryResponseReceivedHandler; typedef std::function&) > BatchPutAssetPropertyValueResponseReceivedHandler; typedef std::function&) > CreateAccessPolicyResponseReceivedHandler; typedef std::function&) > CreateAssetResponseReceivedHandler; typedef std::function&) > CreateAssetModelResponseReceivedHandler; typedef std::function&) > CreateBulkImportJobResponseReceivedHandler; typedef std::function&) > CreateDashboardResponseReceivedHandler; typedef std::function&) > CreateGatewayResponseReceivedHandler; typedef std::function&) > CreatePortalResponseReceivedHandler; typedef std::function&) > CreateProjectResponseReceivedHandler; typedef std::function&) > DeleteAccessPolicyResponseReceivedHandler; typedef std::function&) > DeleteAssetResponseReceivedHandler; typedef std::function&) > DeleteAssetModelResponseReceivedHandler; typedef std::function&) > DeleteDashboardResponseReceivedHandler; typedef std::function&) > DeleteGatewayResponseReceivedHandler; typedef std::function&) > DeletePortalResponseReceivedHandler; typedef std::function&) > DeleteProjectResponseReceivedHandler; typedef std::function&) > DeleteTimeSeriesResponseReceivedHandler; typedef std::function&) > DescribeAccessPolicyResponseReceivedHandler; typedef std::function&) > DescribeAssetResponseReceivedHandler; typedef std::function&) > DescribeAssetModelResponseReceivedHandler; typedef std::function&) > DescribeAssetPropertyResponseReceivedHandler; typedef std::function&) > DescribeBulkImportJobResponseReceivedHandler; typedef std::function&) > DescribeDashboardResponseReceivedHandler; typedef std::function&) > DescribeDefaultEncryptionConfigurationResponseReceivedHandler; typedef std::function&) > DescribeGatewayResponseReceivedHandler; typedef std::function&) > DescribeGatewayCapabilityConfigurationResponseReceivedHandler; typedef std::function&) > DescribeLoggingOptionsResponseReceivedHandler; typedef std::function&) > DescribePortalResponseReceivedHandler; typedef std::function&) > DescribeProjectResponseReceivedHandler; typedef std::function&) > DescribeStorageConfigurationResponseReceivedHandler; typedef std::function&) > DescribeTimeSeriesResponseReceivedHandler; typedef std::function&) > DisassociateAssetsResponseReceivedHandler; typedef std::function&) > DisassociateTimeSeriesFromAssetPropertyResponseReceivedHandler; typedef std::function&) > GetAssetPropertyAggregatesResponseReceivedHandler; typedef std::function&) > GetAssetPropertyValueResponseReceivedHandler; typedef std::function&) > GetAssetPropertyValueHistoryResponseReceivedHandler; typedef std::function&) > GetInterpolatedAssetPropertyValuesResponseReceivedHandler; typedef std::function&) > ListAccessPoliciesResponseReceivedHandler; typedef std::function&) > ListAssetModelPropertiesResponseReceivedHandler; typedef std::function&) > ListAssetModelsResponseReceivedHandler; typedef std::function&) > ListAssetPropertiesResponseReceivedHandler; typedef std::function&) > ListAssetRelationshipsResponseReceivedHandler; typedef std::function&) > ListAssetsResponseReceivedHandler; typedef std::function&) > ListAssociatedAssetsResponseReceivedHandler; typedef std::function&) > ListBulkImportJobsResponseReceivedHandler; typedef std::function&) > ListDashboardsResponseReceivedHandler; typedef std::function&) > ListGatewaysResponseReceivedHandler; typedef std::function&) > ListPortalsResponseReceivedHandler; typedef std::function&) > ListProjectAssetsResponseReceivedHandler; typedef std::function&) > ListProjectsResponseReceivedHandler; typedef std::function&) > ListTagsForResourceResponseReceivedHandler; typedef std::function&) > ListTimeSeriesResponseReceivedHandler; typedef std::function&) > PutDefaultEncryptionConfigurationResponseReceivedHandler; typedef std::function&) > PutLoggingOptionsResponseReceivedHandler; typedef std::function&) > PutStorageConfigurationResponseReceivedHandler; typedef std::function&) > TagResourceResponseReceivedHandler; typedef std::function&) > UntagResourceResponseReceivedHandler; typedef std::function&) > UpdateAccessPolicyResponseReceivedHandler; typedef std::function&) > UpdateAssetResponseReceivedHandler; typedef std::function&) > UpdateAssetModelResponseReceivedHandler; typedef std::function&) > UpdateAssetPropertyResponseReceivedHandler; typedef std::function&) > UpdateDashboardResponseReceivedHandler; typedef std::function&) > UpdateGatewayResponseReceivedHandler; typedef std::function&) > UpdateGatewayCapabilityConfigurationResponseReceivedHandler; typedef std::function&) > UpdatePortalResponseReceivedHandler; typedef std::function&) > UpdateProjectResponseReceivedHandler; /* End of service model async handlers definitions */ } // namespace IoTSiteWise } // namespace Aws