Skip to content

Commit

Permalink
feat(client-iotsitewise): Adds support for creating SiteWise Edge gat…
Browse files Browse the repository at this point in the history
…eways that run on a Siemens Industrial Edge Device.
  • Loading branch information
awstools committed Jul 24, 2024
1 parent 42b8fd5 commit f1138f7
Show file tree
Hide file tree
Showing 22 changed files with 374 additions and 261 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ function createAwsAuthSigv4HttpAuthOption(authParameters: IoTSiteWiseHttpAuthSch
name: "iotsitewise",
region: authParameters.region,
},
propertiesExtractor: (config: IoTSiteWiseClientConfig, context) => ({
propertiesExtractor: (config: Partial<IoTSiteWiseClientConfig>, context) => ({
/**
* @internal
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,17 +33,20 @@ export interface CreateAssetModelCommandOutput extends CreateAssetModelResponse,
* that have standardized definitions. Each asset created from a model inherits the asset model's
* property and hierarchy definitions. For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/userguide/define-models.html">Defining asset models</a> in the
* <i>IoT SiteWise User Guide</i>.</p>
* <p>You can create two types of asset models, <code>ASSET_MODEL</code> or <code>COMPONENT_MODEL</code>.</p>
* <p>You can create two types of asset models, <code>ASSET_MODEL</code> or
* <code>COMPONENT_MODEL</code>.</p>
* <ul>
* <li>
* <p>
* <b>ASSET_MODEL</b> – (default) An asset model that you can use to create assets.
* Can't be included as a component in another asset model.</p>
* <b>ASSET_MODEL</b> – (default) An asset model that
* you can use to create assets. Can't be included as a component in another asset
* model.</p>
* </li>
* <li>
* <p>
* <b>COMPONENT_MODEL</b> – A reusable component that you can include in the composite
* models of other asset models. You can't create assets directly from this type of asset model. </p>
* <b>COMPONENT_MODEL</b> – A reusable component that
* you can include in the composite models of other asset models. You can't create
* assets directly from this type of asset model. </p>
* </li>
* </ul>
* @example
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,17 +33,23 @@ export interface CreateAssetModelCompositeModelCommandOutput
__MetadataBearer {}

/**
* <p>Creates a custom composite model from specified property and hierarchy definitions. There are two types of custom composite models,
* <code>inline</code> and <code>component-model-based</code>. </p>
* <p>Use component-model-based custom composite models to define standard, reusable components. A component-model-based custom composite model consists of a name,
* a description, and the ID of the component model it references. A component-model-based custom composite model has no properties of its own; its referenced
* component model provides its associated properties to any created assets. For more information, see
* <a href="https://docs.aws.amazon.com/iot-sitewise/latest/userguide/custom-composite-models.html">Custom composite models (Components)</a> in the
* <i>IoT SiteWise User Guide</i>.</p>
* <p>Use inline custom composite models to organize the properties of an asset model. The properties of inline custom composite models are local to the asset model where they are
* included and can't be used to create multiple assets.</p>
* <p>To create a component-model-based model, specify the <code>composedAssetModelId</code> of an existing asset model with <code>assetModelType</code> of <code>COMPONENT_MODEL</code>.</p>
* <p>To create an inline model, specify the <code>assetModelCompositeModelProperties</code> and don't include an <code>composedAssetModelId</code>.</p>
* <p>Creates a custom composite model from specified property and hierarchy definitions. There
* are two types of custom composite models, <code>inline</code> and
* <code>component-model-based</code>. </p>
* <p>Use component-model-based custom composite models to define standard, reusable components.
* A component-model-based custom composite model consists of a name, a description, and the ID
* of the component model it references. A component-model-based custom composite model has no
* properties of its own; its referenced component model provides its associated properties to
* any created assets. For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/userguide/custom-composite-models.html">Custom composite models (Components)</a>
* in the <i>IoT SiteWise User Guide</i>.</p>
* <p>Use inline custom composite models to organize the properties of an asset model. The
* properties of inline custom composite models are local to the asset model where they are
* included and can't be used to create multiple assets.</p>
* <p>To create a component-model-based model, specify the <code>composedAssetModelId</code> of
* an existing asset model with <code>assetModelType</code> of
* <code>COMPONENT_MODEL</code>.</p>
* <p>To create an inline model, specify the <code>assetModelCompositeModelProperties</code> and
* don't include an <code>composedAssetModelId</code>.</p>
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ export interface CreateBulkImportJobCommandOutput extends CreateBulkImportJobRes
* <important>
* <p>Before you create a bulk import job, you must enable IoT SiteWise warm tier or IoT SiteWise cold tier.
* For more information about how to configure storage settings, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_PutStorageConfiguration.html">PutStorageConfiguration</a>.</p>
* <p>Bulk import is designed to store historical data to IoT SiteWise. It does not trigger computations or notifications on
* IoT SiteWise warm or cold tier storage.</p>
* <p>Bulk import is designed to store historical data to IoT SiteWise. It does not trigger
* computations or notifications on IoT SiteWise warm or cold tier storage.</p>
* </important>
* @example
* Use a bare-bones client and the command you need to make an API call.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@ export interface CreateGatewayCommandOutput extends CreateGatewayResponse, __Met
* greengrassV2: { // GreengrassV2
* coreDeviceThingName: "STRING_VALUE", // required
* },
* siemensIE: { // SiemensIE
* iotCoreThingName: "STRING_VALUE", // required
* },
* },
* tags: { // TagMap
* "<keys>": "STRING_VALUE",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,10 @@ export interface DeleteAssetModelCompositeModelCommandOutput

/**
* <p>Deletes a composite model. This action can't be undone. You must delete all assets created
* from a composite model before you can delete the model. Also, you can't delete a composite model if
* a parent asset model exists that contains a property formula expression that depends on the
* asset model that you want to delete. For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/userguide/delete-assets-and-models.html">Deleting assets and models</a> in the
* <i>IoT SiteWise User Guide</i>.</p>
* from a composite model before you can delete the model. Also, you can't delete a composite
* model if a parent asset model exists that contains a property formula expression that depends
* on the asset model that you want to delete. For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/userguide/delete-assets-and-models.html">Deleting assets and
* models</a> in the <i>IoT SiteWise User Guide</i>.</p>
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,10 @@ export interface DeleteGatewayCommandOutput extends __MetadataBearer {}
* @see {@link DeleteGatewayCommandOutput} for command's `response` shape.
* @see {@link IoTSiteWiseClientResolvedConfig | config} for IoTSiteWiseClient's `config` shape.
*
* @throws {@link ConflictingOperationException} (client fault)
* <p>Your request has conflicting operations. This can occur if you're trying to perform more
* than one operation on the same resource at the same time.</p>
*
* @throws {@link InternalFailureException} (server fault)
* <p>IoT SiteWise can't process your request right now. Try again later.</p>
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,10 @@ export interface DescribeAssetCompositeModelCommandOutput
__MetadataBearer {}

/**
* <p>Retrieves information about an asset composite model (also known as an asset component). An <code>AssetCompositeModel</code> is an instance of an <code>AssetModelCompositeModel</code>. If you want to see information about the model this is based on, call
* <a href="https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModelCompositeModel.html">DescribeAssetModelCompositeModel</a>.</p>
* <p>Retrieves information about an asset composite model (also known as an asset component).
* An <code>AssetCompositeModel</code> is an instance of an
* <code>AssetModelCompositeModel</code>. If you want to see information about the model this is
* based on, call <a href="https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModelCompositeModel.html">DescribeAssetModelCompositeModel</a>.</p>
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,9 @@ export interface DescribeAssetModelCompositeModelCommandOutput
__MetadataBearer {}

/**
* <p>Retrieves information about an asset model composite model (also known as an asset model component). For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/userguide/custom-composite-models.html">Custom composite models (Components)</a> in the <i>IoT SiteWise User Guide</i>.</p>
* <p>Retrieves information about an asset model composite model (also known as an asset model
* component). For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/userguide/custom-composite-models.html">Custom composite models
* (Components)</a> in the <i>IoT SiteWise User Guide</i>.</p>
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ export interface DescribeGatewayCapabilityConfigurationCommandOutput
* // gatewayId: "STRING_VALUE", // required
* // capabilityNamespace: "STRING_VALUE", // required
* // capabilityConfiguration: "STRING_VALUE", // required
* // capabilitySyncStatus: "IN_SYNC" || "OUT_OF_SYNC" || "SYNC_FAILED" || "UNKNOWN", // required
* // capabilitySyncStatus: "IN_SYNC" || "OUT_OF_SYNC" || "SYNC_FAILED" || "UNKNOWN" || "NOT_APPLICABLE", // required
* // };
*
* ```
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,11 +51,14 @@ export interface DescribeGatewayCommandOutput extends DescribeGatewayResponse, _
* // greengrassV2: { // GreengrassV2
* // coreDeviceThingName: "STRING_VALUE", // required
* // },
* // siemensIE: { // SiemensIE
* // iotCoreThingName: "STRING_VALUE", // required
* // },
* // },
* // gatewayCapabilitySummaries: [ // GatewayCapabilitySummaries // required
* // { // GatewayCapabilitySummary
* // capabilityNamespace: "STRING_VALUE", // required
* // capabilitySyncStatus: "IN_SYNC" || "OUT_OF_SYNC" || "SYNC_FAILED" || "UNKNOWN", // required
* // capabilitySyncStatus: "IN_SYNC" || "OUT_OF_SYNC" || "SYNC_FAILED" || "UNKNOWN" || "NOT_APPLICABLE", // required
* // },
* // ],
* // creationDate: new Date("TIMESTAMP"), // required
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@ export interface ExecuteQueryCommandInput extends ExecuteQueryRequest {}
export interface ExecuteQueryCommandOutput extends ExecuteQueryResponse, __MetadataBearer {}

/**
* <p>Run SQL queries to retrieve metadata and time-series data from asset models, assets, measurements, metrics, transforms, and aggregates.</p>
* <p>Run SQL queries to retrieve metadata and time-series data from asset models, assets,
* measurements, metrics, transforms, and aggregates.</p>
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,8 @@ export interface ListCompositionRelationshipsCommandOutput
__MetadataBearer {}

/**
* <p>Retrieves a paginated list of composition relationships for an asset model of type <code>COMPONENT_MODEL</code>.</p>
* <p>Retrieves a paginated list of composition relationships for an asset model of type
* <code>COMPONENT_MODEL</code>.</p>
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,11 +53,14 @@ export interface ListGatewaysCommandOutput extends ListGatewaysResponse, __Metad
* // greengrassV2: { // GreengrassV2
* // coreDeviceThingName: "STRING_VALUE", // required
* // },
* // siemensIE: { // SiemensIE
* // iotCoreThingName: "STRING_VALUE", // required
* // },
* // },
* // gatewayCapabilitySummaries: [ // GatewayCapabilitySummaries
* // { // GatewayCapabilitySummary
* // capabilityNamespace: "STRING_VALUE", // required
* // capabilitySyncStatus: "IN_SYNC" || "OUT_OF_SYNC" || "SYNC_FAILED" || "UNKNOWN", // required
* // capabilitySyncStatus: "IN_SYNC" || "OUT_OF_SYNC" || "SYNC_FAILED" || "UNKNOWN" || "NOT_APPLICABLE", // required
* // },
* // ],
* // creationDate: new Date("TIMESTAMP"), // required
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ import { MetadataBearer as __MetadataBearer } from "@smithy/types";

import { commonParams } from "../endpoint/EndpointParameters";
import { IoTSiteWiseClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../IoTSiteWiseClient";
import { ListTimeSeriesRequest, ListTimeSeriesResponse } from "../models/models_0";
import { ListTimeSeriesRequest } from "../models/models_0";
import { ListTimeSeriesResponse } from "../models/models_1";
import { de_ListTimeSeriesCommand, se_ListTimeSeriesCommand } from "../protocols/Aws_restJson1";

/**
Expand Down
20 changes: 14 additions & 6 deletions clients/client-iotsitewise/src/commands/UpdateAssetModelCommand.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,21 @@ export interface UpdateAssetModelCommandOutput extends UpdateAssetModelResponse,
* For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/userguide/update-assets-and-models.html">Updating assets and models</a> in the
* <i>IoT SiteWise User Guide</i>.</p>
* <important>
* <p>This operation overwrites the existing model with the provided model. To avoid deleting
* your asset model's properties or hierarchies, you must include their IDs and definitions in
* the updated asset model payload. For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeAssetModel.html">DescribeAssetModel</a>.</p>
* <p>If you remove a property from an asset model, IoT SiteWise deletes all previous data for that
* property. If you remove a hierarchy definition from an asset model, IoT SiteWise disassociates every
* asset associated with that hierarchy. You can't change the type or data type of an existing
* property.</p>
* property. You can’t change the type or data type of an existing property.</p>
* <p>To replace an existing asset model property with a new one with the same
* <code>name</code>, do the following:</p>
* <ol>
* <li>
* <p>Submit an <code>UpdateAssetModel</code> request with the entire existing property
* removed.</p>
* </li>
* <li>
* <p>Submit a second <code>UpdateAssetModel</code> request that includes the new
* property. The new asset property will have the same <code>name</code> as the previous
* one and IoT SiteWise will generate a new unique <code>id</code>.</p>
* </li>
* </ol>
* </important>
* @example
* Use a bare-bones client and the command you need to make an API call.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,20 +33,24 @@ export interface UpdateAssetModelCompositeModelCommandOutput
__MetadataBearer {}

/**
* <p>Updates a composite model and all of the assets that were created from the model. Each asset
* created from the model inherits the updated asset model's property and hierarchy definitions.
* For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/userguide/update-assets-and-models.html">Updating assets and models</a> in the
* <i>IoT SiteWise User Guide</i>.</p>
* <p>Updates a composite model and all of the assets that were created from the model. Each
* asset created from the model inherits the updated asset model's property and hierarchy
* definitions. For more information, see <a href="https://docs.aws.amazon.com/iot-sitewise/latest/userguide/update-assets-and-models.html">Updating assets and models</a> in the
* <i>IoT SiteWise User Guide</i>.</p>
* <important>
* <p>If you remove a property from a composite asset model, IoT SiteWise deletes all previous data for that property. You can’t change the type or data type of an existing property.</p>
* <p>To replace an existing composite asset model property with a new one with the same <code>name</code>, do the following:</p>
* <p>If you remove a property from a composite asset model, IoT SiteWise deletes all previous data
* for that property. You can’t change the type or data type of an existing property.</p>
* <p>To replace an existing composite asset model property with a new one with the same
* <code>name</code>, do the following:</p>
* <ol>
* <li>
* <p>Submit an <code>UpdateAssetModelCompositeModel</code> request with the entire existing property removed.</p>
* <p>Submit an <code>UpdateAssetModelCompositeModel</code> request with the entire
* existing property removed.</p>
* </li>
* <li>
* <p>Submit a second <code>UpdateAssetModelCompositeModel</code> request that includes the new property. The new asset property will have the same
* <code>name</code> as the previous one and IoT SiteWise will generate a new unique <code>id</code>.</p>
* <p>Submit a second <code>UpdateAssetModelCompositeModel</code> request that includes
* the new property. The new asset property will have the same <code>name</code> as the
* previous one and IoT SiteWise will generate a new unique <code>id</code>.</p>
* </li>
* </ol>
* </important>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ export interface UpdateGatewayCapabilityConfigurationCommandOutput
* const response = await client.send(command);
* // { // UpdateGatewayCapabilityConfigurationResponse
* // capabilityNamespace: "STRING_VALUE", // required
* // capabilitySyncStatus: "IN_SYNC" || "OUT_OF_SYNC" || "SYNC_FAILED" || "UNKNOWN", // required
* // capabilitySyncStatus: "IN_SYNC" || "OUT_OF_SYNC" || "SYNC_FAILED" || "UNKNOWN" || "NOT_APPLICABLE", // required
* // };
*
* ```
Expand Down
Loading

0 comments on commit f1138f7

Please sign in to comment.