Exchange
- Implements: IExchange
This class encapsulates and extends the ROS resource type ALIYUN::AMQP::Exchange.
Initializers
import ros_cdk_amqp
ros_cdk_amqp.Exchange(
scope: Construct,
id: str,
auto_delete_state: typing.Union[bool, IResolvable],
exchange_name: typing.Union[str, IResolvable],
exchange_type: typing.Union[str, IResolvable],
instance_id: typing.Union[str, IResolvable],
internal: typing.Union[bool, IResolvable],
virtual_host: typing.Union[str, IResolvable],
alternate_exchange: typing.Union[str, IResolvable] = None,
x_delayed_type: typing.Union[str, IResolvable] = None,
enable_resource_property_constraint: bool = None
)
| Name | Type | Description |
|---|---|---|
scope | ros_cdk_core.Construct | No description. |
id | str | No description. |
auto_delete_state | typing.Union[bool, ros_cdk_core.IResolvable] | Property autoDeleteState: Specifies whether the Auto Delete attribute is configured. |
exchange_name | typing.Union[str, ros_cdk_core.IResolvable] | Property exchangeName: The name of the exchange. |
exchange_type | typing.Union[str, ros_cdk_core.IResolvable] | Property exchangeType: The type of the exchange. |
instance_id | typing.Union[str, ros_cdk_core.IResolvable] | Property instanceId: InstanceId. |
internal | typing.Union[bool, ros_cdk_core.IResolvable] | Property internal: Specifies whether an exchange is an internal exchange. |
virtual_host | typing.Union[str, ros_cdk_core.IResolvable] | Property virtualHost: The name of the virtual host. |
alternate_exchange | typing.Union[str, ros_cdk_core.IResolvable] | Property alternateExchange: The alternate exchange. |
x_delayed_type | typing.Union[str, ros_cdk_core.IResolvable] | Property xDelayedType: Exchanges of the x-delay-Message type allow you to customize the Header property of the message, and the x-delay specifies the amount of time in milliseconds for the message to be delivered. |
enable_resource_property_constraint | bool | No description. |
scopeRequired
- Type: ros_cdk_core.Construct
idRequired
- Type: str
auto_delete_stateRequired
- Type: typing.Union[bool, ros_cdk_core.IResolvable]
Property autoDeleteState: Specifies whether the Auto Delete attribute is configured.
Valid values: true: The Auto Delete attribute is configured. If the last queue that is bound to an exchange is unbound, the exchange is automatically deleted. false: The Auto Delete attribute is not configured. If the last queue that is bound to an exchange is unbound, the exchange is not automatically deleted.
exchange_nameRequired
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property exchangeName: The name of the exchange.
Note:
- The name can contain only letters, digits, hyphens (-), underscores (_), periods (.), number signs (#), forward slashes (/), and at signs (@). The name must be 1 to 255 characters in length.
- The name of an exchange cannot be changed after the exchange is created. To change the name, delete the exchange and create a new one.
exchange_typeRequired
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property exchangeType: The type of the exchange.
Valid values:
- DIRECT: This routing rule type routes messages to a queue whose binding key exactly matches the routing key of the message.
- TOPIC: This type is similar to the DIRECT type. It routes messages to bound queues using routing key pattern matching and string comparison.
- FANOUT: This routing rule type is simple. It routes all messages sent to the exchange to all queues that are bound to the exchange. This works like a broadcast feature.
- HEADERS: This type is similar to the DIRECT type. It uses header properties instead of a routing key for routing. When a queue is bound to a headers exchange, key-value pairs are defined for the binding. When a message is sent to the exchange, key-value pairs are defined in the message header. The exchange routes the message by comparing the key-value pairs in the header with the key-value pairs of the binding.
instance_idRequired
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property instanceId: InstanceId.
internalRequired
- Type: typing.Union[bool, ros_cdk_core.IResolvable]
Property internal: Specifies whether an exchange is an internal exchange.
Valid values: false: The exchange is not an internal exchange. true: The exchange is an internal exchange.
virtual_hostRequired
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property virtualHost: The name of the virtual host.
alternate_exchangeOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property alternateExchange: The alternate exchange.
An alternate exchange is configured for an existing exchange. It is used to receive messages that fail to be routed to queues from the existing exchange.
x_delayed_typeOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property xDelayedType: Exchanges of the x-delay-Message type allow you to customize the Header property of the message, and the x-delay specifies the amount of time in milliseconds for the message to be delivered.
The routing rules for this class of exchanges depend on the Exchange type specified in the x-delay-type parameter, which specifies the actual Exchange type to which the delayed message will eventually be delivered. Valid values:
- DIRECT: Delivers deferred messages to a specified queue bound to an Exchange of type DIRECT.
-
TOPIC: Delivers deferred messages to the queue bound to the Exchange type TOPIC.
-
FANOUT: Delivers deferred messages to a queue bound to an Exchange of type FANOUT.
-
HEADERS: Deferred messages are delivered to the queue bound to the Exchange HEADERS type.
-
X-JMS-TOPIC: Delivers deferred messages to the queue bound to X-JMS-TOPIC.
enable_resource_property_constraintOptional
- Type: bool
Methods
| Name | Description |
|---|---|
to_string | Returns a string representation of this construct. |
synthesize | Allows this construct to emit artifacts into the cloud assembly during synthesis. |
add_condition | No description. |
add_count | No description. |
add_dependency | No description. |
add_resource_desc | No description. |
apply_removal_policy | No description. |
fetch_condition | No description. |
fetch_dependency | No description. |
fetch_resource_desc | No description. |
get_att | No description. |
set_metadata | No description. |
to_string
def to_string() -> str
Returns a string representation of this construct.
synthesize
def synthesize(
session: ISynthesisSession
) -> None
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: ros_cdk_core.ISynthesisSession
The synthesis session.
add_condition
def add_condition(
condition: RosCondition
) -> None
- Type: ros_cdk_core.RosCondition
add_count
def add_count(
count: typing.Union[typing.Union[int, float], IResolvable]
) -> None
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
add_dependency
def add_dependency(
resource: Resource
) -> None
- Type: ros_cdk_core.Resource
add_resource_desc
def add_resource_desc(
desc: str
) -> None
- Type: str
apply_removal_policy
def apply_removal_policy(
policy: RemovalPolicy
) -> None
- Type: ros_cdk_core.RemovalPolicy
fetch_condition
def fetch_condition() -> RosCondition
fetch_dependency
def fetch_dependency() -> typing.List[str]
fetch_resource_desc
def fetch_resource_desc() -> str
get_att
def get_att(
name: str
) -> IResolvable
- Type: str
set_metadata
def set_metadata(
key: str,
value: typing.Any
) -> None
- Type: str
- Type: typing.Any
Static Functions
| Name | Description |
|---|---|
is_construct | Return whether the given object is a Construct. |
is_construct
import ros_cdk_amqp
ros_cdk_amqp.Exchange.is_construct(
x: typing.Any
)
Return whether the given object is a Construct.
- Type: typing.Any
Properties
| Name | Type | Description |
|---|---|---|
node | ros_cdk_core.ConstructNode | The construct tree node associated with this construct. |
env | ros_cdk_core.IResourceEnvironment | The environment this resource belongs to. |
ref | str | No description. |
stack | ros_cdk_core.Stack | The stack in which this resource is defined. |
resource | ros_cdk_core.RosResource | No description. |
attr_exchange_name | typing.Union[str, ros_cdk_core.IResolvable] | Attribute ExchangeName: The name of the exchange. |
props | ExchangeProps | No description. |
nodeRequired
node: ConstructNode
- Type: ros_cdk_core.ConstructNode
The construct tree node associated with this construct.
envRequired
env: IResourceEnvironment
- Type: ros_cdk_core.IResourceEnvironment
The environment this resource belongs to.
For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.
refRequired
ref: str
- Type: str
stackRequired
stack: Stack
- Type: ros_cdk_core.Stack
The stack in which this resource is defined.
resourceOptional
resource: RosResource
- Type: ros_cdk_core.RosResource
attr_exchange_nameRequired
attr_exchange_name: typing.Union[str, IResolvable]
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Attribute ExchangeName: The name of the exchange.
propsRequired
props: ExchangeProps
- Type: ExchangeProps