Skip to content

RosRule

This class is a base encapsulation around the ROS resource type ALIYUN::Config::Rule, which is used to create or modify a rule.

Initializers

using AlibabaCloud.SDK.ROS.CDK.Config;
new RosRule(Construct Scope, string Id, RosRuleProps Props, bool EnableResourcePropertyConstraint);
Name Type Description
Scope AlibabaCloud.SDK.ROS.CDK.Core.Construct - scope in which this resource is defined.
Id string - scoped id of the resource.
Props RosRuleProps - resource properties.
EnableResourcePropertyConstraint bool No description.

ScopeRequired

  • Type: AlibabaCloud.SDK.ROS.CDK.Core.Construct

scope in which this resource is defined.


IdRequired

  • Type: string

scoped id of the resource.


PropsRequired

resource properties.


EnableResourcePropertyConstraintRequired

  • Type: bool

Methods

Name Description
ToString Returns a string representation of this construct.
Synthesize Allows this construct to emit artifacts into the cloud assembly during synthesis.
OverrideLogicalId Overrides the auto-generated logical ID with a specific ID.
AddCondition No description.
AddCount No description.
AddDeletionOverride Syntactic sugar for addOverride(path, undefined).
AddDependsOn Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
AddDesc No description.
AddMetaData No description.
AddOverride Adds an override to the synthesized ROS resource.
AddPropertyDeletionOverride Adds an override that deletes the value of a property from the resource definition.
AddPropertyOverride Adds an override to a resource property.
AddRosDependency No description.
ApplyRemovalPolicy Sets the deletion policy of the resource based on the removal policy specified.
GetAtt Returns a token for an runtime attribute of this resource.

ToString

private string ToString()

Returns a string representation of this construct.

Synthesize

private void Synthesize(ISynthesisSession Session)

Allows this construct to emit artifacts into the cloud assembly during synthesis.

This method is usually implemented by framework-level constructs such as Stack and Asset as they participate in synthesizing the cloud assembly.

SessionRequired

  • Type: AlibabaCloud.SDK.ROS.CDK.Core.ISynthesisSession

The synthesis session.


OverrideLogicalId

private void OverrideLogicalId(string NewLogicalId)

Overrides the auto-generated logical ID with a specific ID.

NewLogicalIdRequired

  • Type: string

The new logical ID to use for this stack element.


AddCondition

private void AddCondition(RosCondition Con)

ConRequired

  • Type: AlibabaCloud.SDK.ROS.CDK.Core.RosCondition

AddCount

private void AddCount(object Count)

CountRequired

  • Type: object

AddDeletionOverride

private void AddDeletionOverride(string Path)

Syntactic sugar for addOverride(path, undefined).

PathRequired

  • Type: string

The path of the value to delete.


AddDependsOn

private void AddDependsOn(RosResource Target)

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.

TargetRequired

  • Type: AlibabaCloud.SDK.ROS.CDK.Core.RosResource

AddDesc

private void AddDesc(string Desc)

DescRequired

  • Type: string

AddMetaData

private void AddMetaData(string Key, object Value)

KeyRequired

  • Type: string

ValueRequired

  • Type: object

AddOverride

private void AddOverride(string Path, object Value)

Adds an override to the synthesized ROS 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.

For example,

addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute'])
addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE')

would add the overrides

"Properties": {
   "GlobalSecondaryIndexes": [
     {
       "Projection": {
         "NonKeyAttributes": [ "myattribute" ]
         ...
       }
       ...
     },
     {
       "ProjectionType": "INCLUDE"
       ...
     },
   ]
   ...
}

PathRequired

  • Type: string

The path of the property, you can use dot notation to override values in complex types.

Any intermdediate keys will be created as needed.


ValueRequired

  • Type: object

The value.

Could be primitive or complex.


AddPropertyDeletionOverride

private void AddPropertyDeletionOverride(string PropertyPath)

Adds an override that deletes the value of a property from the resource definition.

PropertyPathRequired

  • Type: string

The path to the property.


AddPropertyOverride

private void AddPropertyOverride(string PropertyPath, object Value)

Adds an override to a resource property.

Syntactic sugar for addOverride("Properties.<...>", value).

PropertyPathRequired

  • Type: string

The path of the property.


ValueRequired

  • Type: object

The value.


AddRosDependency

private void AddRosDependency(string Target)

TargetRequired

  • Type: string

ApplyRemovalPolicy

private void ApplyRemovalPolicy(RemovalPolicy Policy = null, RemovalPolicyOptions Options = null)

Sets the deletion policy of the resource based on the removal policy specified.

PolicyOptional

  • Type: AlibabaCloud.SDK.ROS.CDK.Core.RemovalPolicy

OptionsOptional

  • Type: AlibabaCloud.SDK.ROS.CDK.Core.RemovalPolicyOptions

GetAtt

private Reference GetAtt(string AttributeName)

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.

AttributeNameRequired

  • Type: string

The name of the attribute.


Static Functions

Name Description
IsConstruct Return whether the given object is a Construct.
IsRosElement Returns true if a construct is a stack element (i.e. part of the synthesized template).
IsRosResource Check whether the given construct is a RosResource.

IsConstruct

using AlibabaCloud.SDK.ROS.CDK.Config;
RosRule.IsConstruct(object X);

Return whether the given object is a Construct.

XRequired

  • Type: object

IsRosElement

using AlibabaCloud.SDK.ROS.CDK.Config;
RosRule.IsRosElement(object X);

Returns true if a construct is a stack element (i.e. part of the synthesized template).

Uses duck-typing instead of instanceof to allow stack elements from different versions of this library to be included in the same stack.

XRequired

  • Type: object

IsRosResource

using AlibabaCloud.SDK.ROS.CDK.Config;
RosRule.IsRosResource(IConstruct Construct);

Check whether the given construct is a RosResource.

ConstructRequired

  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IConstruct

Properties

Name Type Description
Node AlibabaCloud.SDK.ROS.CDK.Core.ConstructNode The construct tree node associated with this construct.
CreationStack string[] No description.
LogicalId string The logical ID for this stack element.
Stack AlibabaCloud.SDK.ROS.CDK.Core.Stack The stack in which this element is defined.
Ref string Return a string that will be resolved to a RosTemplate { Ref } for this element.
RosOptions AlibabaCloud.SDK.ROS.CDK.Core.IRosResourceOptions Options for this resource, such as condition, update policy etc.
RosResourceType string ROS resource type.
AttrConfigRuleArn AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrConfigRuleId AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrConfigRuleTriggerTypes AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrDescription AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrEventSource AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrExcludeResourceIdsScope AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrInputParameters AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrMaximumExecutionFrequency AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrRegionIdsScope AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrResourceGroupIdsScope AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrResourceTypesScope AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrRiskLevel AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrRuleName AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrSourceIdentifier AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrSourceOwner AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrTagKeyScope AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
AttrTagValueScope AlibabaCloud.SDK.ROS.CDK.Core.IResolvable No description.
ConfigRuleTriggerTypes object No description.
EnableResourcePropertyConstraint bool No description.
ResourceTypesScope object No description.
RiskLevel object No description.
RuleName object No description.
SourceIdentifier object No description.
SourceOwner object No description.
Description object No description.
ExcludeResourceIdsScope object No description.
InputParameters object No description.
MaximumExecutionFrequency object No description.
RegionIdsScope object No description.
ResourceGroupIdsScope object No description.
TagKeyLogicScope object No description.
TagKeyScope object No description.
TagValueScope object No description.

NodeRequired

public ConstructNode Node { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.ConstructNode

The construct tree node associated with this construct.


CreationStackRequired

public string[] CreationStack { get; }
  • Type: string[]

LogicalIdRequired

public string LogicalId { get; }
  • Type: string

The logical ID for this 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).


StackRequired

public Stack Stack { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.Stack

The stack in which this element is defined.

RosElements must be defined within a stack scope (directly or indirectly).


RefRequired

public string Ref { get; }
  • Type: string

Return a string that will be resolved to a RosTemplate { 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 }).


RosOptionsRequired

public IRosResourceOptions RosOptions { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IRosResourceOptions

Options for this resource, such as condition, update policy etc.


RosResourceTypeRequired

public string RosResourceType { get; }
  • Type: string

ROS resource type.


AttrConfigRuleArnRequired

public IResolvable AttrConfigRuleArn { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrConfigRuleIdRequired

public IResolvable AttrConfigRuleId { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrConfigRuleTriggerTypesRequired

public IResolvable AttrConfigRuleTriggerTypes { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrDescriptionRequired

public IResolvable AttrDescription { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrEventSourceRequired

public IResolvable AttrEventSource { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrExcludeResourceIdsScopeRequired

public IResolvable AttrExcludeResourceIdsScope { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrInputParametersRequired

public IResolvable AttrInputParameters { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrMaximumExecutionFrequencyRequired

public IResolvable AttrMaximumExecutionFrequency { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrRegionIdsScopeRequired

public IResolvable AttrRegionIdsScope { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrResourceGroupIdsScopeRequired

public IResolvable AttrResourceGroupIdsScope { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrResourceTypesScopeRequired

public IResolvable AttrResourceTypesScope { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrRiskLevelRequired

public IResolvable AttrRiskLevel { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrRuleNameRequired

public IResolvable AttrRuleName { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrSourceIdentifierRequired

public IResolvable AttrSourceIdentifier { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrSourceOwnerRequired

public IResolvable AttrSourceOwner { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrTagKeyScopeRequired

public IResolvable AttrTagKeyScope { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

AttrTagValueScopeRequired

public IResolvable AttrTagValueScope { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.IResolvable

ConfigRuleTriggerTypesRequired

public object ConfigRuleTriggerTypes { get; }
  • Type: object

EnableResourcePropertyConstraintRequired

public bool EnableResourcePropertyConstraint { get; }
  • Type: bool

ResourceTypesScopeRequired

public object ResourceTypesScope { get; }
  • Type: object

RiskLevelRequired

public object RiskLevel { get; }
  • Type: object

RuleNameRequired

public object RuleName { get; }
  • Type: object

SourceIdentifierRequired

public object SourceIdentifier { get; }
  • Type: object

SourceOwnerRequired

public object SourceOwner { get; }
  • Type: object

DescriptionOptional

public object Description { get; }
  • Type: object

ExcludeResourceIdsScopeOptional

public object ExcludeResourceIdsScope { get; }
  • Type: object

InputParametersOptional

public object InputParameters { get; }
  • Type: object

MaximumExecutionFrequencyOptional

public object MaximumExecutionFrequency { get; }
  • Type: object

RegionIdsScopeOptional

public object RegionIdsScope { get; }
  • Type: object

ResourceGroupIdsScopeOptional

public object ResourceGroupIdsScope { get; }
  • Type: object

TagKeyLogicScopeOptional

public object TagKeyLogicScope { get; }
  • Type: object

TagKeyScopeOptional

public object TagKeyScope { get; }
  • Type: object

TagValueScopeOptional

public object TagValueScope { get; }
  • Type: object

Constants

Name Type Description
RosResourceTypeName string The resource type name for this resource class.

RosResourceTypeNameRequired

public string RosResourceTypeName { get; }
  • Type: string

The resource type name for this resource class.