Skip to content

RosRule

Rules are used to verify that the parameter values passed to the template when the resource stack is created or updated are as expected.

Initializers

import com.aliyun.ros.cdk.core.RosRule;
RosRule.Builder.create(Construct scope, java.lang.String id)
    .assertions(RosRuleAssertionProps)
//  .ruleCondition(IResolvable)
    .build();
Name Type Description
scope Construct No description.
id java.lang.String No description.
assertions RosRuleAssertionProps Used to describe assertions.
ruleCondition IResolvable Define the rule condition.

scopeRequired


idRequired

  • Type: java.lang.String

assertionsRequired

Used to describe assertions.


ruleConditionOptional

Define the rule condition.

If the rule condition is not defined, the assertion is always valid.


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.

toString

public java.lang.String toString()

Returns a string representation of this construct.

synthesize

public 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

The synthesis session.


overrideLogicalId

public void overrideLogicalId(java.lang.String newLogicalId)

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

newLogicalIdRequired

  • Type: java.lang.String

The new logical ID to use for this stack element.


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).

isConstruct

import com.aliyun.ros.cdk.core.RosRule;
RosRule.isConstruct(java.lang.Object x)

Return whether the given object is a Construct.

xRequired

  • Type: java.lang.Object

isRosElement

import com.aliyun.ros.cdk.core.RosRule;
RosRule.isRosElement(java.lang.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: java.lang.Object

Properties

Name Type Description
node ConstructNode The construct tree node associated with this construct.
creationStack java.util.List No description.
logicalId java.lang.String The logical ID for this stack element.
stack Stack The stack in which this element is defined.

nodeRequired

public ConstructNode getNode();

The construct tree node associated with this construct.


creationStackRequired

public java.util.List<java.lang.String> getCreationStack();
  • Type: java.util.List

logicalIdRequired

public java.lang.String getLogicalId();
  • Type: java.lang.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 getStack();

The stack in which this element is defined.

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