/** * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for * license information. * * Code generated by Microsoft (R) AutoRest Code Generator. */ package com.microsoft.azure.management.servicebus.implementation; import org.joda.time.DateTime; import com.microsoft.azure.management.servicebus.MessageCountDetails; import com.microsoft.azure.management.servicebus.EntityStatus; import com.fasterxml.jackson.annotation.JsonProperty; import com.microsoft.rest.serializer.JsonFlatten; import com.microsoft.azure.Resource; /** * Description of queue Resource. */ @JsonFlatten public class QueueInner extends Resource { /** * The duration of a peek-lock; that is, the amount of time that the * message is locked for other receivers. The maximum value for * LockDuration is 5 minutes; the default value is 1 minute. The service * accepts a C# Standard TimeSpan Format for loc duration * https://msdn.microsoft.com/en-us/library/ee372286(v=vs.110).aspx. */ @JsonProperty(value = "properties.lockDuration") private String lockDuration; /** * Last time a message was sent, or the last time there was a receive * request to this queue. */ @JsonProperty(value = "properties.accessedAt", access = JsonProperty.Access.WRITE_ONLY) private DateTime accessedAt; /** * the TimeSpan idle interval after which the queue is automatically * deleted. The minimum duration is 5 minutes. The service accepts a C# * Standard TimeSpan Format for loc duration * https://msdn.microsoft.com/en-us/library/ee372286(v=vs.110).aspx. Format * is 'DD.HH:MM:SS' and default value of this property is 10675199 days. */ @JsonProperty(value = "properties.autoDeleteOnIdle") private String autoDeleteOnIdle; /** * The exact time the Queue was created. */ @JsonProperty(value = "properties.createdAt", access = JsonProperty.Access.WRITE_ONLY) private DateTime createdAt; /** * The default message time to live value. This is the duration after which * the message expires, starting from when the message is sent to Service * Bus. This is the default value used when TimeToLive is not set on a * message itself. Format is 'DD.HH:MM:SS' and default value of this * property is 10675199 days. The service accepts a C# Standard TimeSpan * Format for loc duration * https://msdn.microsoft.com/en-us/library/ee372286(v=vs.110).aspx. */ @JsonProperty(value = "properties.defaultMessageTimeToLive") private String defaultMessageTimeToLive; /** * TimeSpan structure that defines the duration of the duplicate detection * history. The default value is 10 minutes. The service accepts a C# * Standard TimeSpan Format for loc duration * https://msdn.microsoft.com/en-us/library/ee372286(v=vs.110).aspx . * Format is 'DD.HH:MM:SS' and default value of this property is 10675199 * days. */ @JsonProperty(value = "properties.duplicateDetectionHistoryTimeWindow") private String duplicateDetectionHistoryTimeWindow; /** * A value that indicates whether server-side batched operations are * enabled. */ @JsonProperty(value = "properties.enableBatchedOperations") private Boolean enableBatchedOperations; /** * A value that indicates whether this queue has dead letter support when a * message expires. */ @JsonProperty(value = "properties.deadLetteringOnMessageExpiration") private Boolean deadLetteringOnMessageExpiration; /** * A value that indicates whether Express Entities are enabled. An express * queue holds a message in memory temporarily before writing it to * persistent storage. */ @JsonProperty(value = "properties.enableExpress") private Boolean enableExpress; /** * A value that indicates whether the queue is to be partitioned across * multiple message brokers. */ @JsonProperty(value = "properties.enablePartitioning") private Boolean enablePartitioning; /** * The maximum delivery count. A message is automatically deadlettered * after this number of deliveries. */ @JsonProperty(value = "properties.maxDeliveryCount") private Integer maxDeliveryCount; /** * The maximum size of the queue in megabytes, which is the size of memory * allocated for the queue. */ @JsonProperty(value = "properties.maxSizeInMegabytes") private Long maxSizeInMegabytes; /** * The number of messages in the queue. */ @JsonProperty(value = "properties.messageCount", access = JsonProperty.Access.WRITE_ONLY) private Long messageCount; /** * The countDetails property. */ @JsonProperty(value = "properties.countDetails", access = JsonProperty.Access.WRITE_ONLY) private MessageCountDetails countDetails; /** * A value indicating if this queue requires duplicate detection. */ @JsonProperty(value = "properties.requiresDuplicateDetection") private Boolean requiresDuplicateDetection; /** * A value that indicates whether the queue supports the concept of * sessions. */ @JsonProperty(value = "properties.requiresSession") private Boolean requiresSession; /** * The size of the queue, in bytes. */ @JsonProperty(value = "properties.sizeInBytes", access = JsonProperty.Access.WRITE_ONLY) private Long sizeInBytes; /** * Enumerates the possible values for the status of a messaging entity. * Possible values include: 'Active', 'Creating', 'Deleting', 'Disabled', * 'ReceiveDisabled', 'Renaming', 'Restoring', 'SendDisabled', 'Unknown'. */ @JsonProperty(value = "properties.status", access = JsonProperty.Access.WRITE_ONLY) private EntityStatus status; /** * A value that indicates whether the queue supports ordering. */ @JsonProperty(value = "properties.supportOrdering") private Boolean supportOrdering; /** * The exact time the Queue was updated. */ @JsonProperty(value = "properties.updatedAt", access = JsonProperty.Access.WRITE_ONLY) private DateTime updatedAt; /** * Get the lockDuration value. * * @return the lockDuration value */ public String lockDuration() { return this.lockDuration; } /** * Set the lockDuration value. * * @param lockDuration the lockDuration value to set * @return the QueueInner object itself. */ public QueueInner withLockDuration(String lockDuration) { this.lockDuration = lockDuration; return this; } /** * Get the accessedAt value. * * @return the accessedAt value */ public DateTime accessedAt() { return this.accessedAt; } /** * Get the autoDeleteOnIdle value. * * @return the autoDeleteOnIdle value */ public String autoDeleteOnIdle() { return this.autoDeleteOnIdle; } /** * Set the autoDeleteOnIdle value. * * @param autoDeleteOnIdle the autoDeleteOnIdle value to set * @return the QueueInner object itself. */ public QueueInner withAutoDeleteOnIdle(String autoDeleteOnIdle) { this.autoDeleteOnIdle = autoDeleteOnIdle; return this; } /** * Get the createdAt value. * * @return the createdAt value */ public DateTime createdAt() { return this.createdAt; } /** * Get the defaultMessageTimeToLive value. * * @return the defaultMessageTimeToLive value */ public String defaultMessageTimeToLive() { return this.defaultMessageTimeToLive; } /** * Set the defaultMessageTimeToLive value. * * @param defaultMessageTimeToLive the defaultMessageTimeToLive value to set * @return the QueueInner object itself. */ public QueueInner withDefaultMessageTimeToLive(String defaultMessageTimeToLive) { this.defaultMessageTimeToLive = defaultMessageTimeToLive; return this; } /** * Get the duplicateDetectionHistoryTimeWindow value. * * @return the duplicateDetectionHistoryTimeWindow value */ public String duplicateDetectionHistoryTimeWindow() { return this.duplicateDetectionHistoryTimeWindow; } /** * Set the duplicateDetectionHistoryTimeWindow value. * * @param duplicateDetectionHistoryTimeWindow the duplicateDetectionHistoryTimeWindow value to set * @return the QueueInner object itself. */ public QueueInner withDuplicateDetectionHistoryTimeWindow(String duplicateDetectionHistoryTimeWindow) { this.duplicateDetectionHistoryTimeWindow = duplicateDetectionHistoryTimeWindow; return this; } /** * Get the enableBatchedOperations value. * * @return the enableBatchedOperations value */ public Boolean enableBatchedOperations() { return this.enableBatchedOperations; } /** * Set the enableBatchedOperations value. * * @param enableBatchedOperations the enableBatchedOperations value to set * @return the QueueInner object itself. */ public QueueInner withEnableBatchedOperations(Boolean enableBatchedOperations) { this.enableBatchedOperations = enableBatchedOperations; return this; } /** * Get the deadLetteringOnMessageExpiration value. * * @return the deadLetteringOnMessageExpiration value */ public Boolean deadLetteringOnMessageExpiration() { return this.deadLetteringOnMessageExpiration; } /** * Set the deadLetteringOnMessageExpiration value. * * @param deadLetteringOnMessageExpiration the deadLetteringOnMessageExpiration value to set * @return the QueueInner object itself. */ public QueueInner withDeadLetteringOnMessageExpiration(Boolean deadLetteringOnMessageExpiration) { this.deadLetteringOnMessageExpiration = deadLetteringOnMessageExpiration; return this; } /** * Get the enableExpress value. * * @return the enableExpress value */ public Boolean enableExpress() { return this.enableExpress; } /** * Set the enableExpress value. * * @param enableExpress the enableExpress value to set * @return the QueueInner object itself. */ public QueueInner withEnableExpress(Boolean enableExpress) { this.enableExpress = enableExpress; return this; } /** * Get the enablePartitioning value. * * @return the enablePartitioning value */ public Boolean enablePartitioning() { return this.enablePartitioning; } /** * Set the enablePartitioning value. * * @param enablePartitioning the enablePartitioning value to set * @return the QueueInner object itself. */ public QueueInner withEnablePartitioning(Boolean enablePartitioning) { this.enablePartitioning = enablePartitioning; return this; } /** * Get the maxDeliveryCount value. * * @return the maxDeliveryCount value */ public Integer maxDeliveryCount() { return this.maxDeliveryCount; } /** * Set the maxDeliveryCount value. * * @param maxDeliveryCount the maxDeliveryCount value to set * @return the QueueInner object itself. */ public QueueInner withMaxDeliveryCount(Integer maxDeliveryCount) { this.maxDeliveryCount = maxDeliveryCount; return this; } /** * Get the maxSizeInMegabytes value. * * @return the maxSizeInMegabytes value */ public Long maxSizeInMegabytes() { return this.maxSizeInMegabytes; } /** * Set the maxSizeInMegabytes value. * * @param maxSizeInMegabytes the maxSizeInMegabytes value to set * @return the QueueInner object itself. */ public QueueInner withMaxSizeInMegabytes(Long maxSizeInMegabytes) { this.maxSizeInMegabytes = maxSizeInMegabytes; return this; } /** * Get the messageCount value. * * @return the messageCount value */ public Long messageCount() { return this.messageCount; } /** * Get the countDetails value. * * @return the countDetails value */ public MessageCountDetails countDetails() { return this.countDetails; } /** * Get the requiresDuplicateDetection value. * * @return the requiresDuplicateDetection value */ public Boolean requiresDuplicateDetection() { return this.requiresDuplicateDetection; } /** * Set the requiresDuplicateDetection value. * * @param requiresDuplicateDetection the requiresDuplicateDetection value to set * @return the QueueInner object itself. */ public QueueInner withRequiresDuplicateDetection(Boolean requiresDuplicateDetection) { this.requiresDuplicateDetection = requiresDuplicateDetection; return this; } /** * Get the requiresSession value. * * @return the requiresSession value */ public Boolean requiresSession() { return this.requiresSession; } /** * Set the requiresSession value. * * @param requiresSession the requiresSession value to set * @return the QueueInner object itself. */ public QueueInner withRequiresSession(Boolean requiresSession) { this.requiresSession = requiresSession; return this; } /** * Get the sizeInBytes value. * * @return the sizeInBytes value */ public Long sizeInBytes() { return this.sizeInBytes; } /** * Get the status value. * * @return the status value */ public EntityStatus status() { return this.status; } /** * Get the supportOrdering value. * * @return the supportOrdering value */ public Boolean supportOrdering() { return this.supportOrdering; } /** * Set the supportOrdering value. * * @param supportOrdering the supportOrdering value to set * @return the QueueInner object itself. */ public QueueInner withSupportOrdering(Boolean supportOrdering) { this.supportOrdering = supportOrdering; return this; } /** * Get the updatedAt value. * * @return the updatedAt value */ public DateTime updatedAt() { return this.updatedAt; } }