RosRefElement
Base class for referenceable template constructs which are not Resources.
These constructs are things like Conditions and Parameters, can be
referenced by taking the .ref attribute.
Resource constructs do not inherit from RosRefElement because they have their own, more specific types returned from the .ref attribute. Also, some resources aren't referenceable at all (such as BucketPolicies or GatewayAttachments).
Initializers
import com.aliyun.ros.cdk.core.RosRefElement;
new RosRefElement(Construct scope, java.lang.String id);
| Name | Type | Description |
|---|---|---|
scope |
Construct |
The parent construct. |
id |
java.lang.String |
No description. |
scopeRequired
- Type: Construct
The parent construct.
idRequired
- Type: java.lang.String
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.
- Type: ISynthesisSession
The synthesis session.
overrideLogicalId
public void overrideLogicalId(java.lang.String newLogicalId)
Overrides the auto-generated logical ID with a specific ID.
- 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.RosRefElement;
RosRefElement.isConstruct(java.lang.Object x)
Return whether the given object is a Construct.
- Type: java.lang.Object
isRosElement
import com.aliyun.ros.cdk.core.RosRefElement;
RosRefElement.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.
- 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. |
ref |
java.lang.String |
Return a string that will be resolved to a RosTemplate { Ref } for this element. |
nodeRequired
public ConstructNode getNode();
- Type: ConstructNode
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();
- Type: Stack
The stack in which this element is defined.
RosElements must be defined within a stack scope (directly or indirectly).
refRequired
public java.lang.String getRef();
- Type: java.lang.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 }).