Skip to content

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 "github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore"
alicloudroscdkcore.NewRosRefElement(scope Construct, id *string) RosRefElement
Name Type Description
scope Construct The parent construct.
id *string No description.

scopeRequired

The parent construct.


idRequired

  • Type: *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

func ToString() *string

Returns a string representation of this construct.

Synthesize

func Synthesize(session ISynthesisSession)

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

func OverrideLogicalId(newLogicalId *string)

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

newLogicalIdRequired

  • Type: *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 "github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore"
alicloudroscdkcore.RosRefElement_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct.

xRequired

  • Type: interface{}

IsRosElement

import "github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore"
alicloudroscdkcore.RosRefElement_IsRosElement(x interface{}) *bool

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: interface{}

Properties

Name Type Description
Node ConstructNode The construct tree node associated with this construct.
CreationStack []string No description.
LogicalId *string The logical ID for this stack element.
Stack 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.

NodeRequired

func Node() ConstructNode

The construct tree node associated with this construct.


CreationStackRequired

func CreationStack() *[]*string
  • Type: []string

LogicalIdRequired

func LogicalId() *string
  • 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

func Stack() Stack

The stack in which this element is defined.

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


RefRequired

func Ref() *string
  • 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 }).