import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This resource provides the Queue resource in Oracle Cloud Infrastructure Queue service. * * Creates a new queue. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testQueue = new oci.queue.Queue("test_queue", { * compartmentId: compartmentId, * displayName: queueDisplayName, * capabilities: [{ * isPrimaryConsumerGroupEnabled: queueCapabilitiesIsPrimaryConsumerGroupEnabled === "true", * primaryConsumerGroupDeadLetterQueueDeliveryCount: Number(queueCapabilitiesPrimaryConsumerGroupDeadLetterQueueDeliveryCount), * primaryConsumerGroupDisplayName: queueCapabilitiesPrimaryConsumerGroupDisplayName, * primaryConsumerGroupFilter: queueCapabilitiesPrimaryConsumerGroupFilter, * type: queueCapabilitiesType, * }], * channelConsumptionLimit: Number(queueChannelConsumptionLimit), * customEncryptionKeyId: testKey.id, * deadLetterQueueDeliveryCount: Number(queueDeadLetterQueueDeliveryCount), * purgeTrigger: Number(purgeTrigger), * purgeType: purgeType, * definedTags: { * "foo-namespace.bar-key": "value", * }, * freeformTags: { * "bar-key": "value", * }, * retentionInSeconds: Number(queueRetentionInSeconds), * timeoutInSeconds: Number(queueTimeoutInSeconds), * visibilityInSeconds: Number(queueVisibilityInSeconds), * }); * ``` * * ## Import * * Queues can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:Queue/queue:Queue test_queue "id" * ``` */ export declare class Queue extends pulumi.CustomResource { /** * Get an existing Queue resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: QueueState, opts?: pulumi.CustomResourceOptions): Queue; /** * Returns true if the given object is an instance of Queue. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Queue; /** * (Updatable) The capability to add on the queue */ readonly capabilities: pulumi.Output; /** * (Updatable) The percentage of allocated queue resources that can be consumed by a single channel. For example, if a queue has a storage limit of 2Gb, and a single channel consumption limit is 0.1 (10%), that means data size of a single channel can't exceed 200Mb. Consumption limit of 100% (default) means that a single channel can consume up-to all allocated queue's resources. */ readonly channelConsumptionLimit: pulumi.Output; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment containing the queue. */ readonly compartmentId: pulumi.Output; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom encryption key to be used to encrypt messages content. */ readonly customEncryptionKeyId: pulumi.Output; /** * (Updatable) The number of times a message can be delivered to a consumer before being moved to the dead letter queue. A value of 0 indicates that the DLQ is not used. */ readonly deadLetterQueueDeliveryCount: pulumi.Output; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` */ readonly definedTags: pulumi.Output<{ [key: string]: string; }>; /** * (Updatable) The user-friendly name of the queue. */ readonly displayName: pulumi.Output; /** * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ readonly freeformTags: pulumi.Output<{ [key: string]: string; }>; /** * Any additional details about the current state of the queue. */ readonly lifecycleDetails: pulumi.Output; /** * The endpoint to use to consume or publish messages in the queue. */ readonly messagesEndpoint: pulumi.Output; /** * (Updatable) An optional property when incremented triggers Purge. Could be set to any integer value. */ readonly purgeTrigger: pulumi.Output; /** * (Updatable) An optional value that specifies the purge behavior for the Queue. Could be set to NORMAL, DLQ or BOTH. If unset, the default value is NORMAL * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ readonly purgeType: pulumi.Output; /** * The retention period of messages in the queue, in seconds. */ readonly retentionInSeconds: pulumi.Output; /** * The current state of the queue. */ readonly state: pulumi.Output; /** * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}` */ readonly systemTags: pulumi.Output<{ [key: string]: string; }>; /** * The time that the queue was created, expressed in [RFC 3339](https://tools.ietf.org/rfc/rfc3339) timestamp format. Example: `2018-04-20T00:00:07.405Z` */ readonly timeCreated: pulumi.Output; /** * The time that the queue was updated, expressed in [RFC 3339](https://tools.ietf.org/rfc/rfc3339) timestamp format. Example: `2018-04-20T00:00:07.405Z` */ readonly timeUpdated: pulumi.Output; /** * (Updatable) The default polling timeout of the messages in the queue, in seconds. */ readonly timeoutInSeconds: pulumi.Output; /** * (Updatable) The default visibility timeout of the messages consumed from the queue, in seconds. */ readonly visibilityInSeconds: pulumi.Output; /** * Create a Queue resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: QueueArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Queue resources. */ export interface QueueState { /** * (Updatable) The capability to add on the queue */ capabilities?: pulumi.Input[] | undefined>; /** * (Updatable) The percentage of allocated queue resources that can be consumed by a single channel. For example, if a queue has a storage limit of 2Gb, and a single channel consumption limit is 0.1 (10%), that means data size of a single channel can't exceed 200Mb. Consumption limit of 100% (default) means that a single channel can consume up-to all allocated queue's resources. */ channelConsumptionLimit?: pulumi.Input; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment containing the queue. */ compartmentId?: pulumi.Input; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom encryption key to be used to encrypt messages content. */ customEncryptionKeyId?: pulumi.Input; /** * (Updatable) The number of times a message can be delivered to a consumer before being moved to the dead letter queue. A value of 0 indicates that the DLQ is not used. */ deadLetterQueueDeliveryCount?: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) The user-friendly name of the queue. */ displayName?: pulumi.Input; /** * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Any additional details about the current state of the queue. */ lifecycleDetails?: pulumi.Input; /** * The endpoint to use to consume or publish messages in the queue. */ messagesEndpoint?: pulumi.Input; /** * (Updatable) An optional property when incremented triggers Purge. Could be set to any integer value. */ purgeTrigger?: pulumi.Input; /** * (Updatable) An optional value that specifies the purge behavior for the Queue. Could be set to NORMAL, DLQ or BOTH. If unset, the default value is NORMAL * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ purgeType?: pulumi.Input; /** * The retention period of messages in the queue, in seconds. */ retentionInSeconds?: pulumi.Input; /** * The current state of the queue. */ state?: pulumi.Input; /** * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}` */ systemTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * The time that the queue was created, expressed in [RFC 3339](https://tools.ietf.org/rfc/rfc3339) timestamp format. Example: `2018-04-20T00:00:07.405Z` */ timeCreated?: pulumi.Input; /** * The time that the queue was updated, expressed in [RFC 3339](https://tools.ietf.org/rfc/rfc3339) timestamp format. Example: `2018-04-20T00:00:07.405Z` */ timeUpdated?: pulumi.Input; /** * (Updatable) The default polling timeout of the messages in the queue, in seconds. */ timeoutInSeconds?: pulumi.Input; /** * (Updatable) The default visibility timeout of the messages consumed from the queue, in seconds. */ visibilityInSeconds?: pulumi.Input; } /** * The set of arguments for constructing a Queue resource. */ export interface QueueArgs { /** * (Updatable) The capability to add on the queue */ capabilities?: pulumi.Input[] | undefined>; /** * (Updatable) The percentage of allocated queue resources that can be consumed by a single channel. For example, if a queue has a storage limit of 2Gb, and a single channel consumption limit is 0.1 (10%), that means data size of a single channel can't exceed 200Mb. Consumption limit of 100% (default) means that a single channel can consume up-to all allocated queue's resources. */ channelConsumptionLimit?: pulumi.Input; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment containing the queue. */ compartmentId: pulumi.Input; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the custom encryption key to be used to encrypt messages content. */ customEncryptionKeyId?: pulumi.Input; /** * (Updatable) The number of times a message can be delivered to a consumer before being moved to the dead letter queue. A value of 0 indicates that the DLQ is not used. */ deadLetterQueueDeliveryCount?: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) The user-friendly name of the queue. */ displayName: pulumi.Input; /** * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) An optional property when incremented triggers Purge. Could be set to any integer value. */ purgeTrigger?: pulumi.Input; /** * (Updatable) An optional value that specifies the purge behavior for the Queue. Could be set to NORMAL, DLQ or BOTH. If unset, the default value is NORMAL * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ purgeType?: pulumi.Input; /** * The retention period of messages in the queue, in seconds. */ retentionInSeconds?: pulumi.Input; /** * (Updatable) The default polling timeout of the messages in the queue, in seconds. */ timeoutInSeconds?: pulumi.Input; /** * (Updatable) The default visibility timeout of the messages consumed from the queue, in seconds. */ visibilityInSeconds?: pulumi.Input; } //# sourceMappingURL=queue.d.ts.map