Documentation ¶
Index ¶
- func CfnAccessPolicy_CFN_RESOURCE_TYPE_NAME() *string
- func CfnAccessPolicy_IsCfnElement(x interface{}) *bool
- func CfnAccessPolicy_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnAccessPolicy_IsConstruct(x interface{}) *bool
- func CfnAssetModel_CFN_RESOURCE_TYPE_NAME() *string
- func CfnAssetModel_IsCfnElement(x interface{}) *bool
- func CfnAssetModel_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnAssetModel_IsConstruct(x interface{}) *bool
- func CfnAsset_CFN_RESOURCE_TYPE_NAME() *string
- func CfnAsset_IsCfnElement(x interface{}) *bool
- func CfnAsset_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnAsset_IsConstruct(x interface{}) *bool
- func CfnDashboard_CFN_RESOURCE_TYPE_NAME() *string
- func CfnDashboard_IsCfnElement(x interface{}) *bool
- func CfnDashboard_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnDashboard_IsConstruct(x interface{}) *bool
- func CfnGateway_CFN_RESOURCE_TYPE_NAME() *string
- func CfnGateway_IsCfnElement(x interface{}) *bool
- func CfnGateway_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnGateway_IsConstruct(x interface{}) *bool
- func CfnPortal_CFN_RESOURCE_TYPE_NAME() *string
- func CfnPortal_IsCfnElement(x interface{}) *bool
- func CfnPortal_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnPortal_IsConstruct(x interface{}) *bool
- func CfnProject_CFN_RESOURCE_TYPE_NAME() *string
- func CfnProject_IsCfnElement(x interface{}) *bool
- func CfnProject_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnProject_IsConstruct(x interface{}) *bool
- func NewCfnAccessPolicy_Override(c CfnAccessPolicy, scope constructs.Construct, id *string, ...)
- func NewCfnAssetModel_Override(c CfnAssetModel, scope constructs.Construct, id *string, ...)
- func NewCfnAsset_Override(c CfnAsset, scope constructs.Construct, id *string, props *CfnAssetProps)
- func NewCfnDashboard_Override(c CfnDashboard, scope constructs.Construct, id *string, ...)
- func NewCfnGateway_Override(c CfnGateway, scope constructs.Construct, id *string, props *CfnGatewayProps)
- func NewCfnPortal_Override(c CfnPortal, scope constructs.Construct, id *string, props *CfnPortalProps)
- func NewCfnProject_Override(c CfnProject, scope constructs.Construct, id *string, props *CfnProjectProps)
- type CfnAccessPolicy
- type CfnAccessPolicyProps
- type CfnAccessPolicy_AccessPolicyIdentityProperty
- type CfnAccessPolicy_AccessPolicyResourceProperty
- type CfnAccessPolicy_IamRoleProperty
- type CfnAccessPolicy_IamUserProperty
- type CfnAccessPolicy_PortalProperty
- type CfnAccessPolicy_ProjectProperty
- type CfnAccessPolicy_UserProperty
- type CfnAsset
- type CfnAssetModel
- type CfnAssetModelProps
- type CfnAssetModel_AssetModelCompositeModelProperty
- type CfnAssetModel_AssetModelHierarchyProperty
- type CfnAssetModel_AssetModelPropertyProperty
- type CfnAssetModel_AttributeProperty
- type CfnAssetModel_ExpressionVariableProperty
- type CfnAssetModel_MetricProperty
- type CfnAssetModel_MetricWindowProperty
- type CfnAssetModel_PropertyTypeProperty
- type CfnAssetModel_TransformProperty
- type CfnAssetModel_TumblingWindowProperty
- type CfnAssetModel_VariableValueProperty
- type CfnAssetProps
- type CfnAsset_AssetHierarchyProperty
- type CfnAsset_AssetPropertyProperty
- type CfnDashboard
- type CfnDashboardProps
- type CfnGateway
- type CfnGatewayProps
- type CfnGateway_GatewayCapabilitySummaryProperty
- type CfnGateway_GatewayPlatformProperty
- type CfnGateway_GreengrassProperty
- type CfnGateway_GreengrassV2Property
- type CfnPortal
- type CfnPortalProps
- type CfnProject
- type CfnProjectProps
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CfnAccessPolicy_CFN_RESOURCE_TYPE_NAME ¶
func CfnAccessPolicy_CFN_RESOURCE_TYPE_NAME() *string
func CfnAccessPolicy_IsCfnElement ¶
func CfnAccessPolicy_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnAccessPolicy_IsCfnResource ¶
func CfnAccessPolicy_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnAccessPolicy_IsConstruct ¶
func CfnAccessPolicy_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnAssetModel_CFN_RESOURCE_TYPE_NAME ¶
func CfnAssetModel_CFN_RESOURCE_TYPE_NAME() *string
func CfnAssetModel_IsCfnElement ¶
func CfnAssetModel_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnAssetModel_IsCfnResource ¶
func CfnAssetModel_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnAssetModel_IsConstruct ¶
func CfnAssetModel_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnAsset_CFN_RESOURCE_TYPE_NAME ¶
func CfnAsset_CFN_RESOURCE_TYPE_NAME() *string
func CfnAsset_IsCfnElement ¶
func CfnAsset_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnAsset_IsCfnResource ¶
func CfnAsset_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnAsset_IsConstruct ¶
func CfnAsset_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnDashboard_CFN_RESOURCE_TYPE_NAME ¶
func CfnDashboard_CFN_RESOURCE_TYPE_NAME() *string
func CfnDashboard_IsCfnElement ¶
func CfnDashboard_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnDashboard_IsCfnResource ¶
func CfnDashboard_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnDashboard_IsConstruct ¶
func CfnDashboard_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnGateway_CFN_RESOURCE_TYPE_NAME ¶
func CfnGateway_CFN_RESOURCE_TYPE_NAME() *string
func CfnGateway_IsCfnElement ¶
func CfnGateway_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnGateway_IsCfnResource ¶
func CfnGateway_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnGateway_IsConstruct ¶
func CfnGateway_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnPortal_CFN_RESOURCE_TYPE_NAME ¶
func CfnPortal_CFN_RESOURCE_TYPE_NAME() *string
func CfnPortal_IsCfnElement ¶
func CfnPortal_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnPortal_IsCfnResource ¶
func CfnPortal_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnPortal_IsConstruct ¶
func CfnPortal_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnProject_CFN_RESOURCE_TYPE_NAME ¶
func CfnProject_CFN_RESOURCE_TYPE_NAME() *string
func CfnProject_IsCfnElement ¶
func CfnProject_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnProject_IsCfnResource ¶
func CfnProject_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnProject_IsConstruct ¶
func CfnProject_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func NewCfnAccessPolicy_Override ¶
func NewCfnAccessPolicy_Override(c CfnAccessPolicy, scope constructs.Construct, id *string, props *CfnAccessPolicyProps)
Create a new `AWS::IoTSiteWise::AccessPolicy`.
func NewCfnAssetModel_Override ¶
func NewCfnAssetModel_Override(c CfnAssetModel, scope constructs.Construct, id *string, props *CfnAssetModelProps)
Create a new `AWS::IoTSiteWise::AssetModel`.
func NewCfnAsset_Override ¶
func NewCfnAsset_Override(c CfnAsset, scope constructs.Construct, id *string, props *CfnAssetProps)
Create a new `AWS::IoTSiteWise::Asset`.
func NewCfnDashboard_Override ¶
func NewCfnDashboard_Override(c CfnDashboard, scope constructs.Construct, id *string, props *CfnDashboardProps)
Create a new `AWS::IoTSiteWise::Dashboard`.
func NewCfnGateway_Override ¶
func NewCfnGateway_Override(c CfnGateway, scope constructs.Construct, id *string, props *CfnGatewayProps)
Create a new `AWS::IoTSiteWise::Gateway`.
func NewCfnPortal_Override ¶
func NewCfnPortal_Override(c CfnPortal, scope constructs.Construct, id *string, props *CfnPortalProps)
Create a new `AWS::IoTSiteWise::Portal`.
func NewCfnProject_Override ¶
func NewCfnProject_Override(c CfnProject, scope constructs.Construct, id *string, props *CfnProjectProps)
Create a new `AWS::IoTSiteWise::Project`.
Types ¶
type CfnAccessPolicy ¶
type CfnAccessPolicy interface { awscdk.CfnResource awscdk.IInspectable // The identity for this access policy. // // Choose an AWS SSO user, an AWS SSO group, or an IAM user. AccessPolicyIdentity() interface{} SetAccessPolicyIdentity(val interface{}) // The permission level for this access policy. // // Choose either a `ADMINISTRATOR` or `VIEWER` . Note that a project `ADMINISTRATOR` is also known as a project owner. AccessPolicyPermission() *string SetAccessPolicyPermission(val *string) // The AWS IoT SiteWise Monitor resource for this access policy. // // Choose either a portal or a project. AccessPolicyResource() interface{} SetAccessPolicyResource(val interface{}) // The [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) of the access policy, which has the following format. // // `arn:${Partition}:iotsitewise:${Region}:${Account}:access-policy/${AccessPolicyId}`. AttrAccessPolicyArn() *string // The ID of the access policy. AttrAccessPolicyId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::IoTSiteWise::AccessPolicy`.
Creates an access policy that grants the specified identity ( AWS SSO user, AWS SSO group, or IAM user) access to the specified AWS IoT SiteWise Monitor portal or project resource.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnAccessPolicy := awscdk.Aws_iotsitewise.NewCfnAccessPolicy(this, jsii.String("MyCfnAccessPolicy"), &cfnAccessPolicyProps{ accessPolicyIdentity: &accessPolicyIdentityProperty{ iamRole: &iamRoleProperty{ arn: jsii.String("arn"), }, iamUser: &iamUserProperty{ arn: jsii.String("arn"), }, user: &userProperty{ id: jsii.String("id"), }, }, accessPolicyPermission: jsii.String("accessPolicyPermission"), accessPolicyResource: &accessPolicyResourceProperty{ portal: &portalProperty{ id: jsii.String("id"), }, project: &projectProperty{ id: jsii.String("id"), }, }, })
func NewCfnAccessPolicy ¶
func NewCfnAccessPolicy(scope constructs.Construct, id *string, props *CfnAccessPolicyProps) CfnAccessPolicy
Create a new `AWS::IoTSiteWise::AccessPolicy`.
type CfnAccessPolicyProps ¶
type CfnAccessPolicyProps struct { // The identity for this access policy. // // Choose an AWS SSO user, an AWS SSO group, or an IAM user. AccessPolicyIdentity interface{} `field:"required" json:"accessPolicyIdentity" yaml:"accessPolicyIdentity"` // The permission level for this access policy. // // Choose either a `ADMINISTRATOR` or `VIEWER` . Note that a project `ADMINISTRATOR` is also known as a project owner. AccessPolicyPermission *string `field:"required" json:"accessPolicyPermission" yaml:"accessPolicyPermission"` // The AWS IoT SiteWise Monitor resource for this access policy. // // Choose either a portal or a project. AccessPolicyResource interface{} `field:"required" json:"accessPolicyResource" yaml:"accessPolicyResource"` }
Properties for defining a `CfnAccessPolicy`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnAccessPolicyProps := &cfnAccessPolicyProps{ accessPolicyIdentity: &accessPolicyIdentityProperty{ iamRole: &iamRoleProperty{ arn: jsii.String("arn"), }, iamUser: &iamUserProperty{ arn: jsii.String("arn"), }, user: &userProperty{ id: jsii.String("id"), }, }, accessPolicyPermission: jsii.String("accessPolicyPermission"), accessPolicyResource: &accessPolicyResourceProperty{ portal: &portalProperty{ id: jsii.String("id"), }, project: &projectProperty{ id: jsii.String("id"), }, }, }
type CfnAccessPolicy_AccessPolicyIdentityProperty ¶
type CfnAccessPolicy_AccessPolicyIdentityProperty struct { // An IAM role identity. IamRole interface{} `field:"optional" json:"iamRole" yaml:"iamRole"` // An IAM user identity. IamUser interface{} `field:"optional" json:"iamUser" yaml:"iamUser"` // The AWS SSO user to which this access policy maps. User interface{} `field:"optional" json:"user" yaml:"user"` }
The identity ( AWS SSO user, AWS SSO group, or IAM user) to which this access policy applies.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" accessPolicyIdentityProperty := &accessPolicyIdentityProperty{ iamRole: &iamRoleProperty{ arn: jsii.String("arn"), }, iamUser: &iamUserProperty{ arn: jsii.String("arn"), }, user: &userProperty{ id: jsii.String("id"), }, }
type CfnAccessPolicy_AccessPolicyResourceProperty ¶
type CfnAccessPolicy_AccessPolicyResourceProperty struct { // The AWS IoT SiteWise Monitor portal for this access policy. Portal interface{} `field:"optional" json:"portal" yaml:"portal"` // The AWS IoT SiteWise Monitor project for this access policy. Project interface{} `field:"optional" json:"project" yaml:"project"` }
The AWS IoT SiteWise Monitor resource for this access policy.
Choose either a portal or a project.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" accessPolicyResourceProperty := &accessPolicyResourceProperty{ portal: &portalProperty{ id: jsii.String("id"), }, project: &projectProperty{ id: jsii.String("id"), }, }
type CfnAccessPolicy_IamRoleProperty ¶
type CfnAccessPolicy_IamRoleProperty struct { // The ARN of the IAM role. // // For more information, see [IAM ARNs](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) in the *IAM User Guide* . Arn *string `field:"optional" json:"arn" yaml:"arn"` }
Contains information about an AWS Identity and Access Management role.
For more information, see [IAM roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) in the *IAM User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" iamRoleProperty := &iamRoleProperty{ arn: jsii.String("arn"), }
type CfnAccessPolicy_IamUserProperty ¶
type CfnAccessPolicy_IamUserProperty struct { // The ARN of the IAM user. For more information, see [IAM ARNs](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) in the *IAM User Guide* . // // > If you delete the IAM user, access policies that contain this identity include an empty `arn` . You can delete the access policy for the IAM user that no longer exists. Arn *string `field:"optional" json:"arn" yaml:"arn"` }
Contains information about an AWS Identity and Access Management user.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" iamUserProperty := &iamUserProperty{ arn: jsii.String("arn"), }
type CfnAccessPolicy_PortalProperty ¶
type CfnAccessPolicy_PortalProperty struct { // The ID of the portal. Id *string `field:"optional" json:"id" yaml:"id"` }
The `Portal` property type specifies the AWS IoT SiteWise Monitor portal for an [AWS::IoTSiteWise::AccessPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-accesspolicy.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" portalProperty := &portalProperty{ id: jsii.String("id"), }
type CfnAccessPolicy_ProjectProperty ¶
type CfnAccessPolicy_ProjectProperty struct { // The ID of the project. Id *string `field:"optional" json:"id" yaml:"id"` }
The `Project` property type specifies the AWS IoT SiteWise Monitor project for an [AWS::IoTSiteWise::AccessPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-accesspolicy.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" projectProperty := &projectProperty{ id: jsii.String("id"), }
type CfnAccessPolicy_UserProperty ¶
type CfnAccessPolicy_UserProperty struct { // The ID of the user. Id *string `field:"optional" json:"id" yaml:"id"` }
The `User` property type specifies the AWS IoT SiteWise Monitor user for an [AWS::IoTSiteWise::AccessPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-accesspolicy.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" userProperty := &userProperty{ id: jsii.String("id"), }
type CfnAsset ¶
type CfnAsset interface { awscdk.CfnResource awscdk.IInspectable // `AWS::IoTSiteWise::Asset.AssetDescription`. AssetDescription() *string SetAssetDescription(val *string) // A list of asset hierarchies that each contain a `hierarchyLogicalId` . // // A hierarchy specifies allowed parent/child asset relationships. AssetHierarchies() interface{} SetAssetHierarchies(val interface{}) // The ID of the asset model from which to create the asset. AssetModelId() *string SetAssetModelId(val *string) // A unique, friendly name for the asset. // // The maximum length is 256 characters with the pattern `[^\ u0000-\ u001F\ u007F]+` . AssetName() *string SetAssetName(val *string) // The list of asset properties for the asset. // // This object doesn't include properties that you define in composite models. You can find composite model properties in the `assetCompositeModels` object. AssetProperties() interface{} SetAssetProperties(val interface{}) // The ARN of the asset. AttrAssetArn() *string // The ID of the asset. AttrAssetId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // A list of key-value pairs that contain metadata for the asset. // // For more information, see [Tagging your AWS IoT SiteWise resources](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html) in the *AWS IoT SiteWise User Guide* . Tags() awscdk.TagManager // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::IoTSiteWise::Asset`.
Creates an asset from an existing asset model. For more information, see [Creating assets](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/create-assets.html) in the *AWS IoT SiteWise User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnAsset := awscdk.Aws_iotsitewise.NewCfnAsset(this, jsii.String("MyCfnAsset"), &cfnAssetProps{ assetModelId: jsii.String("assetModelId"), assetName: jsii.String("assetName"), // the properties below are optional assetDescription: jsii.String("assetDescription"), assetHierarchies: []interface{}{ &assetHierarchyProperty{ childAssetId: jsii.String("childAssetId"), logicalId: jsii.String("logicalId"), }, }, assetProperties: []interface{}{ &assetPropertyProperty{ logicalId: jsii.String("logicalId"), // the properties below are optional alias: jsii.String("alias"), notificationState: jsii.String("notificationState"), }, }, tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, })
func NewCfnAsset ¶
func NewCfnAsset(scope constructs.Construct, id *string, props *CfnAssetProps) CfnAsset
Create a new `AWS::IoTSiteWise::Asset`.
type CfnAssetModel ¶
type CfnAssetModel interface { awscdk.CfnResource awscdk.IInspectable // The composite asset models that are part of this asset model. // // Composite asset models are asset models that contain specific properties. Each composite model has a type that defines the properties that the composite model supports. You can use composite asset models to define alarms on this asset model. AssetModelCompositeModels() interface{} SetAssetModelCompositeModels(val interface{}) // A description for the asset model. AssetModelDescription() *string SetAssetModelDescription(val *string) // The hierarchy definitions of the asset model. // // Each hierarchy specifies an asset model whose assets can be children of any other assets created from this asset model. For more information, see [Defining relationships between assets](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html) in the *AWS IoT SiteWise User Guide* . // // You can specify up to 10 hierarchies per asset model. For more information, see [Quotas](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) in the *AWS IoT SiteWise User Guide* . AssetModelHierarchies() interface{} SetAssetModelHierarchies(val interface{}) // A unique, friendly name for the asset model. // // The maximum length is 256 characters with the pattern `[^\ u0000-\ u001F\ u007F]+` . AssetModelName() *string SetAssetModelName(val *string) // The property definitions of the asset model. // // For more information, see [Defining data properties](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-properties.html) in the *AWS IoT SiteWise User Guide* . // // You can specify up to 200 properties per asset model. For more information, see [Quotas](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) in the *AWS IoT SiteWise User Guide* . AssetModelProperties() interface{} SetAssetModelProperties(val interface{}) AttrAssetModelArn() *string // The ID of the asset model. AttrAssetModelId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // A list of key-value pairs that contain metadata for the asset. // // For more information, see [Tagging your AWS IoT SiteWise resources](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html) in the *AWS IoT SiteWise User Guide* . Tags() awscdk.TagManager // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::IoTSiteWise::AssetModel`.
Creates an asset model from specified property and hierarchy definitions. You create assets from asset models. With asset models, you can easily create assets of the same type that have standardized definitions. Each asset created from a model inherits the asset model's property and hierarchy definitions. For more information, see [Defining asset models](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/define-models.html) in the *AWS IoT SiteWise User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnAssetModel := awscdk.Aws_iotsitewise.NewCfnAssetModel(this, jsii.String("MyCfnAssetModel"), &cfnAssetModelProps{ assetModelName: jsii.String("assetModelName"), // the properties below are optional assetModelCompositeModels: []interface{}{ &assetModelCompositeModelProperty{ name: jsii.String("name"), type: jsii.String("type"), // the properties below are optional compositeModelProperties: []interface{}{ &assetModelPropertyProperty{ dataType: jsii.String("dataType"), logicalId: jsii.String("logicalId"), name: jsii.String("name"), type: &propertyTypeProperty{ typeName: jsii.String("typeName"), // the properties below are optional attribute: &attributeProperty{ defaultValue: jsii.String("defaultValue"), }, metric: &metricProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, window: &metricWindowProperty{ tumbling: &tumblingWindowProperty{ interval: jsii.String("interval"), // the properties below are optional offset: jsii.String("offset"), }, }, }, transform: &transformProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, }, }, // the properties below are optional dataTypeSpec: jsii.String("dataTypeSpec"), unit: jsii.String("unit"), }, }, description: jsii.String("description"), }, }, assetModelDescription: jsii.String("assetModelDescription"), assetModelHierarchies: []interface{}{ &assetModelHierarchyProperty{ childAssetModelId: jsii.String("childAssetModelId"), logicalId: jsii.String("logicalId"), name: jsii.String("name"), }, }, assetModelProperties: []interface{}{ &assetModelPropertyProperty{ dataType: jsii.String("dataType"), logicalId: jsii.String("logicalId"), name: jsii.String("name"), type: &propertyTypeProperty{ typeName: jsii.String("typeName"), // the properties below are optional attribute: &attributeProperty{ defaultValue: jsii.String("defaultValue"), }, metric: &metricProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, window: &metricWindowProperty{ tumbling: &tumblingWindowProperty{ interval: jsii.String("interval"), // the properties below are optional offset: jsii.String("offset"), }, }, }, transform: &transformProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, }, }, // the properties below are optional dataTypeSpec: jsii.String("dataTypeSpec"), unit: jsii.String("unit"), }, }, tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, })
func NewCfnAssetModel ¶
func NewCfnAssetModel(scope constructs.Construct, id *string, props *CfnAssetModelProps) CfnAssetModel
Create a new `AWS::IoTSiteWise::AssetModel`.
type CfnAssetModelProps ¶
type CfnAssetModelProps struct { // A unique, friendly name for the asset model. // // The maximum length is 256 characters with the pattern `[^\ u0000-\ u001F\ u007F]+` . AssetModelName *string `field:"required" json:"assetModelName" yaml:"assetModelName"` // The composite asset models that are part of this asset model. // // Composite asset models are asset models that contain specific properties. Each composite model has a type that defines the properties that the composite model supports. You can use composite asset models to define alarms on this asset model. AssetModelCompositeModels interface{} `field:"optional" json:"assetModelCompositeModels" yaml:"assetModelCompositeModels"` // A description for the asset model. AssetModelDescription *string `field:"optional" json:"assetModelDescription" yaml:"assetModelDescription"` // The hierarchy definitions of the asset model. // // Each hierarchy specifies an asset model whose assets can be children of any other assets created from this asset model. For more information, see [Defining relationships between assets](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html) in the *AWS IoT SiteWise User Guide* . // // You can specify up to 10 hierarchies per asset model. For more information, see [Quotas](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) in the *AWS IoT SiteWise User Guide* . AssetModelHierarchies interface{} `field:"optional" json:"assetModelHierarchies" yaml:"assetModelHierarchies"` // The property definitions of the asset model. // // For more information, see [Defining data properties](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-properties.html) in the *AWS IoT SiteWise User Guide* . // // You can specify up to 200 properties per asset model. For more information, see [Quotas](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) in the *AWS IoT SiteWise User Guide* . AssetModelProperties interface{} `field:"optional" json:"assetModelProperties" yaml:"assetModelProperties"` // A list of key-value pairs that contain metadata for the asset. // // For more information, see [Tagging your AWS IoT SiteWise resources](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html) in the *AWS IoT SiteWise User Guide* . Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnAssetModel`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnAssetModelProps := &cfnAssetModelProps{ assetModelName: jsii.String("assetModelName"), // the properties below are optional assetModelCompositeModels: []interface{}{ &assetModelCompositeModelProperty{ name: jsii.String("name"), type: jsii.String("type"), // the properties below are optional compositeModelProperties: []interface{}{ &assetModelPropertyProperty{ dataType: jsii.String("dataType"), logicalId: jsii.String("logicalId"), name: jsii.String("name"), type: &propertyTypeProperty{ typeName: jsii.String("typeName"), // the properties below are optional attribute: &attributeProperty{ defaultValue: jsii.String("defaultValue"), }, metric: &metricProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, window: &metricWindowProperty{ tumbling: &tumblingWindowProperty{ interval: jsii.String("interval"), // the properties below are optional offset: jsii.String("offset"), }, }, }, transform: &transformProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, }, }, // the properties below are optional dataTypeSpec: jsii.String("dataTypeSpec"), unit: jsii.String("unit"), }, }, description: jsii.String("description"), }, }, assetModelDescription: jsii.String("assetModelDescription"), assetModelHierarchies: []interface{}{ &assetModelHierarchyProperty{ childAssetModelId: jsii.String("childAssetModelId"), logicalId: jsii.String("logicalId"), name: jsii.String("name"), }, }, assetModelProperties: []interface{}{ &assetModelPropertyProperty{ dataType: jsii.String("dataType"), logicalId: jsii.String("logicalId"), name: jsii.String("name"), type: &propertyTypeProperty{ typeName: jsii.String("typeName"), // the properties below are optional attribute: &attributeProperty{ defaultValue: jsii.String("defaultValue"), }, metric: &metricProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, window: &metricWindowProperty{ tumbling: &tumblingWindowProperty{ interval: jsii.String("interval"), // the properties below are optional offset: jsii.String("offset"), }, }, }, transform: &transformProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, }, }, // the properties below are optional dataTypeSpec: jsii.String("dataTypeSpec"), unit: jsii.String("unit"), }, }, tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, }
type CfnAssetModel_AssetModelCompositeModelProperty ¶
type CfnAssetModel_AssetModelCompositeModelProperty struct { // The name of the composite model. Name *string `field:"required" json:"name" yaml:"name"` // The type of the composite model. // // For alarm composite models, this type is `AWS/ALARM` . Type *string `field:"required" json:"type" yaml:"type"` // The asset property definitions for this composite model. CompositeModelProperties interface{} `field:"optional" json:"compositeModelProperties" yaml:"compositeModelProperties"` // The description of the composite model. Description *string `field:"optional" json:"description" yaml:"description"` }
Contains information about a composite model in an asset model.
This object contains the asset property definitions that you define in the composite model. You can use composite asset models to define alarms on this asset model.
If you use the `AssetModelCompositeModel` property to create an alarm, you must use the following information to define three asset model properties:
- Use an asset model property to specify the alarm type.
- The name must be `AWS/ALARM_TYPE` . - The data type must be `STRING` . - For the `Type` property, the type name must be `Attribute` and the default value must be `IOT_EVENTS` . - Use an asset model property to specify the alarm source.
- The name must be `AWS/ALARM_SOURCE` . - The data type must be `STRING` . - For the `Type` property, the type name must be `Attribute` and the default value must be the ARN of the alarm model that you created in AWS IoT Events .
> For the ARN of the alarm model, you can use the `Fn::Sub` intrinsic function to substitute the `AWS::Partition` , `AWS::Region` , and `AWS::AccountId` variables in an input string with values that you specify. > > For example, `Fn::Sub: "arn:${AWS::Partition}:iotevents:${AWS::Region}:${AWS::AccountId}:alarmModel/TestAlarmModel"` . > > Replace `TestAlarmModel` with the name of your alarm model. > > For more information about using the `Fn::Sub` intrinsic function, see [Fn::Sub](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-sub.html) . - Use an asset model property to specify the state of the alarm.
- The name must be `AWS/ALARM_STATE` . - The data type must be `STRUCT` . - The `DataTypeSpec` value must be `AWS/ALARM_STATE` . - For the `Type` property, the type name must be `Measurement` .
At the bottom of this page, we provide a YAML example that you can modify to create an alarm.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" assetModelCompositeModelProperty := &assetModelCompositeModelProperty{ name: jsii.String("name"), type: jsii.String("type"), // the properties below are optional compositeModelProperties: []interface{}{ &assetModelPropertyProperty{ dataType: jsii.String("dataType"), logicalId: jsii.String("logicalId"), name: jsii.String("name"), type: &propertyTypeProperty{ typeName: jsii.String("typeName"), // the properties below are optional attribute: &attributeProperty{ defaultValue: jsii.String("defaultValue"), }, metric: &metricProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, window: &metricWindowProperty{ tumbling: &tumblingWindowProperty{ interval: jsii.String("interval"), // the properties below are optional offset: jsii.String("offset"), }, }, }, transform: &transformProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, }, }, // the properties below are optional dataTypeSpec: jsii.String("dataTypeSpec"), unit: jsii.String("unit"), }, }, description: jsii.String("description"), }
type CfnAssetModel_AssetModelHierarchyProperty ¶
type CfnAssetModel_AssetModelHierarchyProperty struct { // The Id of the asset model. ChildAssetModelId *string `field:"required" json:"childAssetModelId" yaml:"childAssetModelId"` // The `LogicalID` of the asset model hierarchy. This ID is a `hierarchyLogicalId` . // // The maximum length is 256 characters, with the pattern `[^\ u0000-\ u001F\ u007F]+`. LogicalId *string `field:"required" json:"logicalId" yaml:"logicalId"` // The name of the asset model hierarchy. // // The maximum length is 256 characters with the pattern `[^\ u0000-\ u001F\ u007F]+` . Name *string `field:"required" json:"name" yaml:"name"` }
Describes an asset hierarchy that contains a hierarchy's name, `LogicalID` , and child asset model ID that specifies the type of asset that can be in this hierarchy.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" assetModelHierarchyProperty := &assetModelHierarchyProperty{ childAssetModelId: jsii.String("childAssetModelId"), logicalId: jsii.String("logicalId"), name: jsii.String("name"), }
type CfnAssetModel_AssetModelPropertyProperty ¶
type CfnAssetModel_AssetModelPropertyProperty struct { // The data type of the asset model property. // // The value can be `STRING` , `INTEGER` , `DOUBLE` , `BOOLEAN` , or `STRUCT` . DataType *string `field:"required" json:"dataType" yaml:"dataType"` // The `LogicalID` of the asset model property. // // The maximum length is 256 characters, with the pattern `[^\\ u0000-\\ u001F\\ u007F]+` . LogicalId *string `field:"required" json:"logicalId" yaml:"logicalId"` // The name of the asset model property. // // The maximum length is 256 characters with the pattern `[^\ u0000-\ u001F\ u007F]+` . Name *string `field:"required" json:"name" yaml:"name"` // Contains a property type, which can be one of `Attribute` , `Measurement` , `Metric` , or `Transform` . Type interface{} `field:"required" json:"type" yaml:"type"` // The data type of the structure for this property. // // This parameter exists on properties that have the `STRUCT` data type. DataTypeSpec *string `field:"optional" json:"dataTypeSpec" yaml:"dataTypeSpec"` // The unit of the asset model property, such as `Newtons` or `RPM` . Unit *string `field:"optional" json:"unit" yaml:"unit"` }
Contains information about an asset model property.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" assetModelPropertyProperty := &assetModelPropertyProperty{ dataType: jsii.String("dataType"), logicalId: jsii.String("logicalId"), name: jsii.String("name"), type: &propertyTypeProperty{ typeName: jsii.String("typeName"), // the properties below are optional attribute: &attributeProperty{ defaultValue: jsii.String("defaultValue"), }, metric: &metricProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, window: &metricWindowProperty{ tumbling: &tumblingWindowProperty{ interval: jsii.String("interval"), // the properties below are optional offset: jsii.String("offset"), }, }, }, transform: &transformProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, }, }, // the properties below are optional dataTypeSpec: jsii.String("dataTypeSpec"), unit: jsii.String("unit"), }
type CfnAssetModel_AttributeProperty ¶
type CfnAssetModel_AttributeProperty struct { // The default value of the asset model property attribute. // // All assets that you create from the asset model contain this attribute value. You can update an attribute's value after you create an asset. For more information, see [Updating attribute values](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/update-attribute-values.html) in the *AWS IoT SiteWise User Guide* . DefaultValue *string `field:"optional" json:"defaultValue" yaml:"defaultValue"` }
Contains an asset attribute property.
For more information, see [Defining data properties](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-properties.html#attributes) in the *AWS IoT SiteWise User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" attributeProperty := &attributeProperty{ defaultValue: jsii.String("defaultValue"), }
type CfnAssetModel_ExpressionVariableProperty ¶
type CfnAssetModel_ExpressionVariableProperty struct { // The friendly name of the variable to be used in the expression. // // The maximum length is 64 characters with the pattern `^[a-z][a-z0-9_]*$` . Name *string `field:"required" json:"name" yaml:"name"` // The variable that identifies an asset property from which to use values. Value interface{} `field:"required" json:"value" yaml:"value"` }
Contains expression variable information.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" expressionVariableProperty := &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }
type CfnAssetModel_MetricProperty ¶
type CfnAssetModel_MetricProperty struct { // The mathematical expression that defines the metric aggregation function. // // You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. // // For more information, see [Quotas](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) in the *AWS IoT SiteWise User Guide* . Expression *string `field:"required" json:"expression" yaml:"expression"` // The list of variables used in the expression. Variables interface{} `field:"required" json:"variables" yaml:"variables"` // The window (time interval) over which AWS IoT SiteWise computes the metric's aggregation expression. // // AWS IoT SiteWise computes one data point per `window` . Window interface{} `field:"required" json:"window" yaml:"window"` }
Contains an asset metric property.
With metrics, you can calculate aggregate functions, such as an average, maximum, or minimum, as specified through an expression. A metric maps several values to a single value (such as a sum).
The maximum number of dependent/cascading variables used in any one metric calculation is 10. Therefore, a *root* metric can have up to 10 cascading metrics in its computational dependency tree. Additionally, a metric can only have a data type of `DOUBLE` and consume properties with data types of `INTEGER` or `DOUBLE` .
For more information, see [Defining data properties](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-properties.html#metrics) in the *AWS IoT SiteWise User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" metricProperty := &metricProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, window: &metricWindowProperty{ tumbling: &tumblingWindowProperty{ interval: jsii.String("interval"), // the properties below are optional offset: jsii.String("offset"), }, }, }
type CfnAssetModel_MetricWindowProperty ¶
type CfnAssetModel_MetricWindowProperty struct {
// The tumbling time interval window.
Tumbling interface{} `field:"optional" json:"tumbling" yaml:"tumbling"`
}
Contains a time interval window used for data aggregate computations (for example, average, sum, count, and so on).
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" metricWindowProperty := &metricWindowProperty{ tumbling: &tumblingWindowProperty{ interval: jsii.String("interval"), // the properties below are optional offset: jsii.String("offset"), }, }
type CfnAssetModel_PropertyTypeProperty ¶
type CfnAssetModel_PropertyTypeProperty struct { // The type of property type, which can be one of `Attribute` , `Measurement` , `Metric` , or `Transform` . TypeName *string `field:"required" json:"typeName" yaml:"typeName"` // Specifies an asset attribute property. // // An attribute generally contains static information, such as the serial number of an [industrial IoT](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/Internet_of_things#Industrial_applications) wind turbine. // // This is required if the `TypeName` is `Attribute` and has a `DefaultValue` . Attribute interface{} `field:"optional" json:"attribute" yaml:"attribute"` // Specifies an asset metric property. // // A metric contains a mathematical expression that uses aggregate functions to process all input data points over a time interval and output a single data point, such as to calculate the average hourly temperature. // // This is required if the `TypeName` is `Metric` . Metric interface{} `field:"optional" json:"metric" yaml:"metric"` // Specifies an asset transform property. // // A transform contains a mathematical expression that maps a property's data points from one form to another, such as a unit conversion from Celsius to Fahrenheit. // // This is required if the `TypeName` is `Transform` . Transform interface{} `field:"optional" json:"transform" yaml:"transform"` }
Contains a property type, which can be one of `Attribute` , `Measurement` , `Metric` , or `Transform` .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" propertyTypeProperty := &propertyTypeProperty{ typeName: jsii.String("typeName"), // the properties below are optional attribute: &attributeProperty{ defaultValue: jsii.String("defaultValue"), }, metric: &metricProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, window: &metricWindowProperty{ tumbling: &tumblingWindowProperty{ interval: jsii.String("interval"), // the properties below are optional offset: jsii.String("offset"), }, }, }, transform: &transformProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, }, }
type CfnAssetModel_TransformProperty ¶
type CfnAssetModel_TransformProperty struct { // The mathematical expression that defines the transformation function. // // You can specify up to 10 variables per expression. You can specify up to 10 functions per expression. // // For more information, see [Quotas](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html) in the *AWS IoT SiteWise User Guide* . Expression *string `field:"required" json:"expression" yaml:"expression"` // The list of variables used in the expression. Variables interface{} `field:"required" json:"variables" yaml:"variables"` }
Contains an asset transform property.
A transform is a one-to-one mapping of a property's data points from one form to another. For example, you can use a transform to convert a Celsius data stream to Fahrenheit by applying the transformation expression to each data point of the Celsius stream. Transforms can only input properties that are `INTEGER` , `DOUBLE` , or `BOOLEAN` type. Booleans convert to `0` ( `FALSE` ) and `1` ( `TRUE` )..
For more information, see [Defining data properties](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-properties.html#transforms) in the *AWS IoT SiteWise User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" transformProperty := &transformProperty{ expression: jsii.String("expression"), variables: []interface{}{ &expressionVariableProperty{ name: jsii.String("name"), value: &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }, }, }, }
type CfnAssetModel_TumblingWindowProperty ¶
type CfnAssetModel_TumblingWindowProperty struct { // The time interval for the tumbling window. The interval time must be between 1 minute and 1 week. // // AWS IoT SiteWise computes the `1w` interval the end of Sunday at midnight each week (UTC), the `1d` interval at the end of each day at midnight (UTC), the `1h` interval at the end of each hour, and so on. // // When AWS IoT SiteWise aggregates data points for metric computations, the start of each interval is exclusive and the end of each interval is inclusive. AWS IoT SiteWise places the computed data point at the end of the interval. Interval *string `field:"required" json:"interval" yaml:"interval"` // The offset for the tumbling window. The `offset` parameter accepts the following:. // // - The offset time. // // For example, if you specify `18h` for `offset` and `1d` for `interval` , AWS IoT SiteWise aggregates data in one of the following ways: // // - If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. // - If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. // - The ISO 8601 format. // // For example, if you specify `PT18H` for `offset` and `1d` for `interval` , AWS IoT SiteWise aggregates data in one of the following ways: // // - If you create the metric before or at 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) on the day when you create the metric. // - If you create the metric after 6 PM (UTC), you get the first aggregation result at 6 PM (UTC) the next day. // - The 24-hour clock. // // For example, if you specify `00:03:00` for `offset` , `5m` for `interval` , and you create the metric at 2 PM (UTC), you get the first aggregation result at 2:03 PM (UTC). You get the second aggregation result at 2:08 PM (UTC). // - The offset time zone. // // For example, if you specify `2021-07-23T18:00-08` for `offset` and `1d` for `interval` , AWS IoT SiteWise aggregates data in one of the following ways: // // - If you create the metric before or at 6 PM (PST), you get the first aggregation result at 6 PM (PST) on the day when you create the metric. // - If you create the metric after 6 PM (PST), you get the first aggregation result at 6 PM (PST) the next day. Offset *string `field:"optional" json:"offset" yaml:"offset"` }
Contains a tumbling window, which is a repeating fixed-sized, non-overlapping, and contiguous time window.
You can use this window in metrics to aggregate data from properties and other assets.
You can use `m` , `h` , `d` , and `w` when you specify an interval or offset. Note that `m` represents minutes, `h` represents hours, `d` represents days, and `w` represents weeks. You can also use `s` to represent seconds in `offset` .
The `interval` and `offset` parameters support the [ISO 8601 format](https://docs.aws.amazon.com/https://en.wikipedia.org/wiki/ISO_8601) . For example, `PT5S` represents 5 seconds, `PT5M` represents 5 minutes, and `PT5H` represents 5 hours.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" tumblingWindowProperty := &tumblingWindowProperty{ interval: jsii.String("interval"), // the properties below are optional offset: jsii.String("offset"), }
type CfnAssetModel_VariableValueProperty ¶
type CfnAssetModel_VariableValueProperty struct { // The `LogicalID` of the property to use as the variable. PropertyLogicalId *string `field:"required" json:"propertyLogicalId" yaml:"propertyLogicalId"` // The `LogicalID` of the hierarchy to query for the `PropertyLogicalID` . // // You use a `hierarchyLogicalID` instead of a model ID because you can have several hierarchies using the same model and therefore the same property. For example, you might have separately grouped assets that come from the same asset model. For more information, see [Defining relationships between assets](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html) in the *AWS IoT SiteWise User Guide* . HierarchyLogicalId *string `field:"optional" json:"hierarchyLogicalId" yaml:"hierarchyLogicalId"` }
Identifies a property value used in an expression.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" variableValueProperty := &variableValueProperty{ propertyLogicalId: jsii.String("propertyLogicalId"), // the properties below are optional hierarchyLogicalId: jsii.String("hierarchyLogicalId"), }
type CfnAssetProps ¶
type CfnAssetProps struct { // The ID of the asset model from which to create the asset. AssetModelId *string `field:"required" json:"assetModelId" yaml:"assetModelId"` // A unique, friendly name for the asset. // // The maximum length is 256 characters with the pattern `[^\ u0000-\ u001F\ u007F]+` . AssetName *string `field:"required" json:"assetName" yaml:"assetName"` // `AWS::IoTSiteWise::Asset.AssetDescription`. AssetDescription *string `field:"optional" json:"assetDescription" yaml:"assetDescription"` // A list of asset hierarchies that each contain a `hierarchyLogicalId` . // // A hierarchy specifies allowed parent/child asset relationships. AssetHierarchies interface{} `field:"optional" json:"assetHierarchies" yaml:"assetHierarchies"` // The list of asset properties for the asset. // // This object doesn't include properties that you define in composite models. You can find composite model properties in the `assetCompositeModels` object. AssetProperties interface{} `field:"optional" json:"assetProperties" yaml:"assetProperties"` // A list of key-value pairs that contain metadata for the asset. // // For more information, see [Tagging your AWS IoT SiteWise resources](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html) in the *AWS IoT SiteWise User Guide* . Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnAsset`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnAssetProps := &cfnAssetProps{ assetModelId: jsii.String("assetModelId"), assetName: jsii.String("assetName"), // the properties below are optional assetDescription: jsii.String("assetDescription"), assetHierarchies: []interface{}{ &assetHierarchyProperty{ childAssetId: jsii.String("childAssetId"), logicalId: jsii.String("logicalId"), }, }, assetProperties: []interface{}{ &assetPropertyProperty{ logicalId: jsii.String("logicalId"), // the properties below are optional alias: jsii.String("alias"), notificationState: jsii.String("notificationState"), }, }, tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, }
type CfnAsset_AssetHierarchyProperty ¶
type CfnAsset_AssetHierarchyProperty struct { // The Id of the child asset. ChildAssetId *string `field:"required" json:"childAssetId" yaml:"childAssetId"` // The `LogicalID` of the hierarchy. This ID is a `hierarchyLogicalId` . // // The maximum length is 256 characters, with the pattern `[^\ u0000-\ u001F\ u007F]+` . LogicalId *string `field:"required" json:"logicalId" yaml:"logicalId"` }
Describes an asset hierarchy that contains a `childAssetId` and `hierarchyLogicalId` .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" assetHierarchyProperty := &assetHierarchyProperty{ childAssetId: jsii.String("childAssetId"), logicalId: jsii.String("logicalId"), }
type CfnAsset_AssetPropertyProperty ¶
type CfnAsset_AssetPropertyProperty struct { // The `LogicalID` of the asset property. // // The maximum length is 256 characters, with the pattern `[^\ u0000-\ u001F\ u007F]+` . LogicalId *string `field:"required" json:"logicalId" yaml:"logicalId"` // The property alias that identifies the property, such as an OPC-UA server data stream path (for example, `/company/windfarm/3/turbine/7/temperature` ). // // For more information, see [Mapping industrial data streams to asset properties](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/connect-data-streams.html) in the *AWS IoT SiteWise User Guide* . // // The property alias must have 1-1000 characters. Alias *string `field:"optional" json:"alias" yaml:"alias"` // The MQTT notification state (enabled or disabled) for this asset property. // // When the notification state is enabled, AWS IoT SiteWise publishes property value updates to a unique MQTT topic. For more information, see [Interacting with other services](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/interact-with-other-services.html) in the *AWS IoT SiteWise User Guide* . // // If you omit this parameter, the notification state is set to `DISABLED` . NotificationState *string `field:"optional" json:"notificationState" yaml:"notificationState"` }
Contains asset property information.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" assetPropertyProperty := &assetPropertyProperty{ logicalId: jsii.String("logicalId"), // the properties below are optional alias: jsii.String("alias"), notificationState: jsii.String("notificationState"), }
type CfnDashboard ¶
type CfnDashboard interface { awscdk.CfnResource awscdk.IInspectable // The [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) of the dashboard, which has the following format. // // `arn:${Partition}:iotsitewise:${Region}:${Account}:dashboard/${DashboardId}`. AttrDashboardArn() *string // The ID of the dashboard. AttrDashboardId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The dashboard definition specified in a JSON literal. // // For detailed information, see [Creating dashboards (CLI)](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/create-dashboards-using-aws-cli.html) in the *AWS IoT SiteWise User Guide* . DashboardDefinition() *string SetDashboardDefinition(val *string) // A description for the dashboard. DashboardDescription() *string SetDashboardDescription(val *string) // A friendly name for the dashboard. DashboardName() *string SetDashboardName(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // The ID of the project in which to create the dashboard. ProjectId() *string SetProjectId(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // A list of key-value pairs that contain metadata for the dashboard. // // For more information, see [Tagging your AWS IoT SiteWise resources](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html) in the *AWS IoT SiteWise User Guide* . Tags() awscdk.TagManager // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::IoTSiteWise::Dashboard`.
Creates a dashboard in an AWS IoT SiteWise Monitor project.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnDashboard := awscdk.Aws_iotsitewise.NewCfnDashboard(this, jsii.String("MyCfnDashboard"), &cfnDashboardProps{ dashboardDefinition: jsii.String("dashboardDefinition"), dashboardDescription: jsii.String("dashboardDescription"), dashboardName: jsii.String("dashboardName"), // the properties below are optional projectId: jsii.String("projectId"), tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, })
func NewCfnDashboard ¶
func NewCfnDashboard(scope constructs.Construct, id *string, props *CfnDashboardProps) CfnDashboard
Create a new `AWS::IoTSiteWise::Dashboard`.
type CfnDashboardProps ¶
type CfnDashboardProps struct { // The dashboard definition specified in a JSON literal. // // For detailed information, see [Creating dashboards (CLI)](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/create-dashboards-using-aws-cli.html) in the *AWS IoT SiteWise User Guide* . DashboardDefinition *string `field:"required" json:"dashboardDefinition" yaml:"dashboardDefinition"` // A description for the dashboard. DashboardDescription *string `field:"required" json:"dashboardDescription" yaml:"dashboardDescription"` // A friendly name for the dashboard. DashboardName *string `field:"required" json:"dashboardName" yaml:"dashboardName"` // The ID of the project in which to create the dashboard. ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"` // A list of key-value pairs that contain metadata for the dashboard. // // For more information, see [Tagging your AWS IoT SiteWise resources](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html) in the *AWS IoT SiteWise User Guide* . Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnDashboard`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnDashboardProps := &cfnDashboardProps{ dashboardDefinition: jsii.String("dashboardDefinition"), dashboardDescription: jsii.String("dashboardDescription"), dashboardName: jsii.String("dashboardName"), // the properties below are optional projectId: jsii.String("projectId"), tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, }
type CfnGateway ¶
type CfnGateway interface { awscdk.CfnResource awscdk.IInspectable // The ID for the gateway. AttrGatewayId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // A list of gateway capability summaries that each contain a namespace and status. // // Each gateway capability defines data sources for the gateway. To retrieve a capability configuration's definition, use [DescribeGatewayCapabilityConfiguration](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeGatewayCapabilityConfiguration.html) . GatewayCapabilitySummaries() interface{} SetGatewayCapabilitySummaries(val interface{}) // A unique, friendly name for the gateway. // // The maximum length is 256 characters with the pattern `[^\ u0000-\ u001F\ u007F]+` . GatewayName() *string SetGatewayName(val *string) // The gateway's platform. // // You can only specify one platform in a gateway. GatewayPlatform() interface{} SetGatewayPlatform(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // A list of key-value pairs that contain metadata for the gateway. // // For more information, see [Tagging your AWS IoT SiteWise resources](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html) in the *AWS IoT SiteWise User Guide* . Tags() awscdk.TagManager // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::IoTSiteWise::Gateway`.
Creates a gateway, which is a virtual or edge device that delivers industrial data streams from local servers to AWS IoT SiteWise . For more information, see [Ingesting data using a gateway](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/gateway-connector.html) in the *AWS IoT SiteWise User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnGateway := awscdk.Aws_iotsitewise.NewCfnGateway(this, jsii.String("MyCfnGateway"), &cfnGatewayProps{ gatewayName: jsii.String("gatewayName"), gatewayPlatform: &gatewayPlatformProperty{ greengrass: &greengrassProperty{ groupArn: jsii.String("groupArn"), }, greengrassV2: &greengrassV2Property{ coreDeviceThingName: jsii.String("coreDeviceThingName"), }, }, // the properties below are optional gatewayCapabilitySummaries: []interface{}{ &gatewayCapabilitySummaryProperty{ capabilityNamespace: jsii.String("capabilityNamespace"), // the properties below are optional capabilityConfiguration: jsii.String("capabilityConfiguration"), }, }, tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, })
func NewCfnGateway ¶
func NewCfnGateway(scope constructs.Construct, id *string, props *CfnGatewayProps) CfnGateway
Create a new `AWS::IoTSiteWise::Gateway`.
type CfnGatewayProps ¶
type CfnGatewayProps struct { // A unique, friendly name for the gateway. // // The maximum length is 256 characters with the pattern `[^\ u0000-\ u001F\ u007F]+` . GatewayName *string `field:"required" json:"gatewayName" yaml:"gatewayName"` // The gateway's platform. // // You can only specify one platform in a gateway. GatewayPlatform interface{} `field:"required" json:"gatewayPlatform" yaml:"gatewayPlatform"` // A list of gateway capability summaries that each contain a namespace and status. // // Each gateway capability defines data sources for the gateway. To retrieve a capability configuration's definition, use [DescribeGatewayCapabilityConfiguration](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeGatewayCapabilityConfiguration.html) . GatewayCapabilitySummaries interface{} `field:"optional" json:"gatewayCapabilitySummaries" yaml:"gatewayCapabilitySummaries"` // A list of key-value pairs that contain metadata for the gateway. // // For more information, see [Tagging your AWS IoT SiteWise resources](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html) in the *AWS IoT SiteWise User Guide* . Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnGateway`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnGatewayProps := &cfnGatewayProps{ gatewayName: jsii.String("gatewayName"), gatewayPlatform: &gatewayPlatformProperty{ greengrass: &greengrassProperty{ groupArn: jsii.String("groupArn"), }, greengrassV2: &greengrassV2Property{ coreDeviceThingName: jsii.String("coreDeviceThingName"), }, }, // the properties below are optional gatewayCapabilitySummaries: []interface{}{ &gatewayCapabilitySummaryProperty{ capabilityNamespace: jsii.String("capabilityNamespace"), // the properties below are optional capabilityConfiguration: jsii.String("capabilityConfiguration"), }, }, tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, }
type CfnGateway_GatewayCapabilitySummaryProperty ¶
type CfnGateway_GatewayCapabilitySummaryProperty struct { // The namespace of the capability configuration. // // For example, if you configure OPC-UA sources from the AWS IoT SiteWise console, your OPC-UA capability configuration has the namespace `iotsitewise:opcuacollector:version` , where `version` is a number such as `1` . // // The maximum length is 512 characters with the pattern `^[a-zA-Z]+:[a-zA-Z]+:[0-9]+$` . CapabilityNamespace *string `field:"required" json:"capabilityNamespace" yaml:"capabilityNamespace"` // The JSON document that defines the configuration for the gateway capability. // // For more information, see [Configuring data sources (CLI)](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/configure-sources.html#configure-source-cli) in the *AWS IoT SiteWise User Guide* . CapabilityConfiguration *string `field:"optional" json:"capabilityConfiguration" yaml:"capabilityConfiguration"` }
Contains a summary of a gateway capability configuration.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" gatewayCapabilitySummaryProperty := &gatewayCapabilitySummaryProperty{ capabilityNamespace: jsii.String("capabilityNamespace"), // the properties below are optional capabilityConfiguration: jsii.String("capabilityConfiguration"), }
type CfnGateway_GatewayPlatformProperty ¶
type CfnGateway_GatewayPlatformProperty struct { // A gateway that runs on AWS IoT Greengrass . Greengrass interface{} `field:"optional" json:"greengrass" yaml:"greengrass"` // A gateway that runs on AWS IoT Greengrass V2. GreengrassV2 interface{} `field:"optional" json:"greengrassV2" yaml:"greengrassV2"` }
Contains a gateway's platform information.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" gatewayPlatformProperty := &gatewayPlatformProperty{ greengrass: &greengrassProperty{ groupArn: jsii.String("groupArn"), }, greengrassV2: &greengrassV2Property{ coreDeviceThingName: jsii.String("coreDeviceThingName"), }, }
type CfnGateway_GreengrassProperty ¶
type CfnGateway_GreengrassProperty struct { // The [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) of the Greengrass group. For more information about how to find a group's ARN, see [ListGroups](https://docs.aws.amazon.com/greengrass/latest/apireference/listgroups-get.html) and [GetGroup](https://docs.aws.amazon.com/greengrass/latest/apireference/getgroup-get.html) in the *AWS IoT Greengrass API Reference* . GroupArn *string `field:"required" json:"groupArn" yaml:"groupArn"` }
Contains details for a gateway that runs on AWS IoT Greengrass .
To create a gateway that runs on AWS IoT Greengrass , you must add the IoT SiteWise connector to a Greengrass group and deploy it. Your Greengrass group must also have permissions to upload data to AWS IoT SiteWise . For more information, see [Ingesting data using a gateway](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/gateway-connector.html) in the *AWS IoT SiteWise User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" greengrassProperty := &greengrassProperty{ groupArn: jsii.String("groupArn"), }
type CfnGateway_GreengrassV2Property ¶ added in v2.9.0
type CfnGateway_GreengrassV2Property struct { // The name of the AWS IoT thing for your AWS IoT Greengrass V2 core device. CoreDeviceThingName *string `field:"required" json:"coreDeviceThingName" yaml:"coreDeviceThingName"` }
Contains details for a gateway that runs on AWS IoT Greengrass V2.
To create a gateway that runs on AWS IoT Greengrass V2, you must deploy the IoT SiteWise Edge component to your gateway device. Your [Greengrass device role](https://docs.aws.amazon.com/greengrass/v2/developerguide/device-service-role.html) must use the `AWSIoTSiteWiseEdgeAccess` policy. For more information, see [Using AWS IoT SiteWise at the edge](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/sw-gateways.html) in the *AWS IoT SiteWise User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" greengrassV2Property := &greengrassV2Property{ coreDeviceThingName: jsii.String("coreDeviceThingName"), }
type CfnPortal ¶
type CfnPortal interface { awscdk.CfnResource awscdk.IInspectable // Contains the configuration information of an alarm created in an AWS IoT SiteWise Monitor portal. // // You can use the alarm to monitor an asset property and get notified when the asset property value is outside a specified range. For more information, see [Monitoring with alarms](https://docs.aws.amazon.com/iot-sitewise/latest/appguide/monitor-alarms.html) in the *AWS IoT SiteWise Application Guide* . Alarms() interface{} SetAlarms(val interface{}) // The [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) of the portal, which has the following format. // // `arn:${Partition}:iotsitewise:${Region}:${Account}:portal/${PortalId}`. AttrPortalArn() *string // The AWS SSO application generated client ID (used with AWS SSO APIs). AttrPortalClientId() *string // The ID of the created portal. AttrPortalId() *string // The public URL for the AWS IoT SiteWise Monitor portal. AttrPortalStartUrl() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // The email address that sends alarm notifications. // // > If you use the [AWS IoT Events managed Lambda function](https://docs.aws.amazon.com/iotevents/latest/developerguide/lambda-support.html) to manage your emails, you must [verify the sender email address in Amazon SES](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-email-addresses.html) . NotificationSenderEmail() *string SetNotificationSenderEmail(val *string) // The service to use to authenticate users to the portal. Choose from the following options:. // // - `SSO` – The portal uses AWS Single Sign-On to authenticate users and manage user permissions. Before you can create a portal that uses AWS SSO , you must enable AWS SSO . For more information, see [Enabling AWS SSO](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/monitor-get-started.html#mon-gs-sso) in the *AWS IoT SiteWise User Guide* . This option is only available in AWS Regions other than the China Regions. // - `IAM` – The portal uses AWS Identity and Access Management ( IAM ) to authenticate users and manage user permissions. // // You can't change this value after you create a portal. // // Default: `SSO`. PortalAuthMode() *string SetPortalAuthMode(val *string) // The AWS administrator's contact email address. PortalContactEmail() *string SetPortalContactEmail(val *string) // A description for the portal. PortalDescription() *string SetPortalDescription(val *string) // A friendly name for the portal. PortalName() *string SetPortalName(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) of a service role that allows the portal's users to access your AWS IoT SiteWise resources on your behalf. For more information, see [Using service roles for AWS IoT SiteWise Monitor](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/monitor-service-role.html) in the *AWS IoT SiteWise User Guide* . RoleArn() *string SetRoleArn(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // A list of key-value pairs that contain metadata for the portal. // // For more information, see [Tagging your AWS IoT SiteWise resources](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html) in the *AWS IoT SiteWise User Guide* . Tags() awscdk.TagManager // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::IoTSiteWise::Portal`.
Creates a portal, which can contain projects and dashboards. Before you can create a portal, you must enable AWS SSO . AWS IoT SiteWise Monitor uses AWS SSO to manage user permissions. For more information, see [Enabling AWS SSO](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/monitor-get-started.html#mon-gs-sso) in the *AWS IoT SiteWise User Guide* .
> Before you can sign in to a new portal, you must add at least one AWS SSO user or group to that portal. For more information, see [Adding or removing portal administrators](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/administer-portals.html#portal-change-admins) in the *AWS IoT SiteWise User Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var alarms interface{} cfnPortal := awscdk.Aws_iotsitewise.NewCfnPortal(this, jsii.String("MyCfnPortal"), &cfnPortalProps{ portalContactEmail: jsii.String("portalContactEmail"), portalName: jsii.String("portalName"), roleArn: jsii.String("roleArn"), // the properties below are optional alarms: alarms, notificationSenderEmail: jsii.String("notificationSenderEmail"), portalAuthMode: jsii.String("portalAuthMode"), portalDescription: jsii.String("portalDescription"), tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, })
func NewCfnPortal ¶
func NewCfnPortal(scope constructs.Construct, id *string, props *CfnPortalProps) CfnPortal
Create a new `AWS::IoTSiteWise::Portal`.
type CfnPortalProps ¶
type CfnPortalProps struct { // The AWS administrator's contact email address. PortalContactEmail *string `field:"required" json:"portalContactEmail" yaml:"portalContactEmail"` // A friendly name for the portal. PortalName *string `field:"required" json:"portalName" yaml:"portalName"` // The [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) of a service role that allows the portal's users to access your AWS IoT SiteWise resources on your behalf. For more information, see [Using service roles for AWS IoT SiteWise Monitor](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/monitor-service-role.html) in the *AWS IoT SiteWise User Guide* . RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // Contains the configuration information of an alarm created in an AWS IoT SiteWise Monitor portal. // // You can use the alarm to monitor an asset property and get notified when the asset property value is outside a specified range. For more information, see [Monitoring with alarms](https://docs.aws.amazon.com/iot-sitewise/latest/appguide/monitor-alarms.html) in the *AWS IoT SiteWise Application Guide* . Alarms interface{} `field:"optional" json:"alarms" yaml:"alarms"` // The email address that sends alarm notifications. // // > If you use the [AWS IoT Events managed Lambda function](https://docs.aws.amazon.com/iotevents/latest/developerguide/lambda-support.html) to manage your emails, you must [verify the sender email address in Amazon SES](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-email-addresses.html) . NotificationSenderEmail *string `field:"optional" json:"notificationSenderEmail" yaml:"notificationSenderEmail"` // The service to use to authenticate users to the portal. Choose from the following options:. // // - `SSO` – The portal uses AWS Single Sign-On to authenticate users and manage user permissions. Before you can create a portal that uses AWS SSO , you must enable AWS SSO . For more information, see [Enabling AWS SSO](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/monitor-get-started.html#mon-gs-sso) in the *AWS IoT SiteWise User Guide* . This option is only available in AWS Regions other than the China Regions. // - `IAM` – The portal uses AWS Identity and Access Management ( IAM ) to authenticate users and manage user permissions. // // You can't change this value after you create a portal. // // Default: `SSO`. PortalAuthMode *string `field:"optional" json:"portalAuthMode" yaml:"portalAuthMode"` // A description for the portal. PortalDescription *string `field:"optional" json:"portalDescription" yaml:"portalDescription"` // A list of key-value pairs that contain metadata for the portal. // // For more information, see [Tagging your AWS IoT SiteWise resources](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html) in the *AWS IoT SiteWise User Guide* . Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnPortal`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var alarms interface{} cfnPortalProps := &cfnPortalProps{ portalContactEmail: jsii.String("portalContactEmail"), portalName: jsii.String("portalName"), roleArn: jsii.String("roleArn"), // the properties below are optional alarms: alarms, notificationSenderEmail: jsii.String("notificationSenderEmail"), portalAuthMode: jsii.String("portalAuthMode"), portalDescription: jsii.String("portalDescription"), tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, }
type CfnProject ¶
type CfnProject interface { awscdk.CfnResource awscdk.IInspectable // A list that contains the IDs of each asset associated with the project. AssetIds() *[]*string SetAssetIds(val *[]*string) // The [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) of the project, which has the following format. // // `arn:${Partition}:iotsitewise:${Region}:${Account}:project/${ProjectId}`. AttrProjectArn() *string // The ID of the project. AttrProjectId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // The ID of the portal in which to create the project. PortalId() *string SetPortalId(val *string) // A description for the project. ProjectDescription() *string SetProjectDescription(val *string) // A friendly name for the project. ProjectName() *string SetProjectName(val *string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // A list of key-value pairs that contain metadata for the project. // // For more information, see [Tagging your AWS IoT SiteWise resources](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html) in the *AWS IoT SiteWise User Guide* . Tags() awscdk.TagManager // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::IoTSiteWise::Project`.
Creates a project in the specified portal.
> Make sure that the project name and description don't contain confidential information.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnProject := awscdk.Aws_iotsitewise.NewCfnProject(this, jsii.String("MyCfnProject"), &cfnProjectProps{ portalId: jsii.String("portalId"), projectName: jsii.String("projectName"), // the properties below are optional assetIds: []*string{ jsii.String("assetIds"), }, projectDescription: jsii.String("projectDescription"), tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, })
func NewCfnProject ¶
func NewCfnProject(scope constructs.Construct, id *string, props *CfnProjectProps) CfnProject
Create a new `AWS::IoTSiteWise::Project`.
type CfnProjectProps ¶
type CfnProjectProps struct { // The ID of the portal in which to create the project. PortalId *string `field:"required" json:"portalId" yaml:"portalId"` // A friendly name for the project. ProjectName *string `field:"required" json:"projectName" yaml:"projectName"` // A list that contains the IDs of each asset associated with the project. AssetIds *[]*string `field:"optional" json:"assetIds" yaml:"assetIds"` // A description for the project. ProjectDescription *string `field:"optional" json:"projectDescription" yaml:"projectDescription"` // A list of key-value pairs that contain metadata for the project. // // For more information, see [Tagging your AWS IoT SiteWise resources](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html) in the *AWS IoT SiteWise User Guide* . Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnProject`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnProjectProps := &cfnProjectProps{ portalId: jsii.String("portalId"), projectName: jsii.String("projectName"), // the properties below are optional assetIds: []*string{ jsii.String("assetIds"), }, projectDescription: jsii.String("projectDescription"), tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, }