Class SBTopicProperties

java.lang.Object
com.azure.resourcemanager.servicebus.fluent.models.SBTopicProperties
All Implemented Interfaces:
com.azure.json.JsonSerializable<SBTopicProperties>

public final class SBTopicProperties extends Object implements com.azure.json.JsonSerializable<SBTopicProperties>
The Topic Properties definition.
  • Constructor Details

    • SBTopicProperties

      public SBTopicProperties()
      Creates an instance of SBTopicProperties class.
  • Method Details

    • sizeInBytes

      public Long sizeInBytes()
      Get the sizeInBytes property: Size of the topic, in bytes.
      Returns:
      the sizeInBytes value.
    • createdAt

      public OffsetDateTime createdAt()
      Get the createdAt property: Exact time the message was created.
      Returns:
      the createdAt value.
    • updatedAt

      public OffsetDateTime updatedAt()
      Get the updatedAt property: The exact time the message was updated.
      Returns:
      the updatedAt value.
    • accessedAt

      public OffsetDateTime accessedAt()
      Get the accessedAt property: Last time the message was sent, or a request was received, for this topic.
      Returns:
      the accessedAt value.
    • subscriptionCount

      public Integer subscriptionCount()
      Get the subscriptionCount property: Number of subscriptions.
      Returns:
      the subscriptionCount value.
    • countDetails

      public MessageCountDetails countDetails()
      Get the countDetails property: Message count details.
      Returns:
      the countDetails value.
    • defaultMessageTimeToLive

      public Duration defaultMessageTimeToLive()
      Get the defaultMessageTimeToLive property: ISO 8601 Default message timespan 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.
      Returns:
      the defaultMessageTimeToLive value.
    • withDefaultMessageTimeToLive

      public SBTopicProperties withDefaultMessageTimeToLive(Duration defaultMessageTimeToLive)
      Set the defaultMessageTimeToLive property: ISO 8601 Default message timespan 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.
      Parameters:
      defaultMessageTimeToLive - the defaultMessageTimeToLive value to set.
      Returns:
      the SBTopicProperties object itself.
    • maxSizeInMegabytes

      public Integer maxSizeInMegabytes()
      Get the maxSizeInMegabytes property: Maximum size of the topic in megabytes, which is the size of the memory allocated for the topic. Default is 1024.
      Returns:
      the maxSizeInMegabytes value.
    • withMaxSizeInMegabytes

      public SBTopicProperties withMaxSizeInMegabytes(Integer maxSizeInMegabytes)
      Set the maxSizeInMegabytes property: Maximum size of the topic in megabytes, which is the size of the memory allocated for the topic. Default is 1024.
      Parameters:
      maxSizeInMegabytes - the maxSizeInMegabytes value to set.
      Returns:
      the SBTopicProperties object itself.
    • maxMessageSizeInKilobytes

      public Long maxMessageSizeInKilobytes()
      Get the maxMessageSizeInKilobytes property: Maximum size (in KB) of the message payload that can be accepted by the topic. This property is only used in Premium today and default is 1024.
      Returns:
      the maxMessageSizeInKilobytes value.
    • withMaxMessageSizeInKilobytes

      public SBTopicProperties withMaxMessageSizeInKilobytes(Long maxMessageSizeInKilobytes)
      Set the maxMessageSizeInKilobytes property: Maximum size (in KB) of the message payload that can be accepted by the topic. This property is only used in Premium today and default is 1024.
      Parameters:
      maxMessageSizeInKilobytes - the maxMessageSizeInKilobytes value to set.
      Returns:
      the SBTopicProperties object itself.
    • requiresDuplicateDetection

      public Boolean requiresDuplicateDetection()
      Get the requiresDuplicateDetection property: Value indicating if this topic requires duplicate detection.
      Returns:
      the requiresDuplicateDetection value.
    • withRequiresDuplicateDetection

      public SBTopicProperties withRequiresDuplicateDetection(Boolean requiresDuplicateDetection)
      Set the requiresDuplicateDetection property: Value indicating if this topic requires duplicate detection.
      Parameters:
      requiresDuplicateDetection - the requiresDuplicateDetection value to set.
      Returns:
      the SBTopicProperties object itself.
    • duplicateDetectionHistoryTimeWindow

      public Duration duplicateDetectionHistoryTimeWindow()
      Get the duplicateDetectionHistoryTimeWindow property: ISO8601 timespan structure that defines the duration of the duplicate detection history. The default value is 10 minutes.
      Returns:
      the duplicateDetectionHistoryTimeWindow value.
    • withDuplicateDetectionHistoryTimeWindow

      public SBTopicProperties withDuplicateDetectionHistoryTimeWindow(Duration duplicateDetectionHistoryTimeWindow)
      Set the duplicateDetectionHistoryTimeWindow property: ISO8601 timespan structure that defines the duration of the duplicate detection history. The default value is 10 minutes.
      Parameters:
      duplicateDetectionHistoryTimeWindow - the duplicateDetectionHistoryTimeWindow value to set.
      Returns:
      the SBTopicProperties object itself.
    • enableBatchedOperations

      public Boolean enableBatchedOperations()
      Get the enableBatchedOperations property: Value that indicates whether server-side batched operations are enabled.
      Returns:
      the enableBatchedOperations value.
    • withEnableBatchedOperations

      public SBTopicProperties withEnableBatchedOperations(Boolean enableBatchedOperations)
      Set the enableBatchedOperations property: Value that indicates whether server-side batched operations are enabled.
      Parameters:
      enableBatchedOperations - the enableBatchedOperations value to set.
      Returns:
      the SBTopicProperties object itself.
    • status

      public EntityStatus status()
      Get the status property: Enumerates the possible values for the status of a messaging entity.
      Returns:
      the status value.
    • withStatus

      public SBTopicProperties withStatus(EntityStatus status)
      Set the status property: Enumerates the possible values for the status of a messaging entity.
      Parameters:
      status - the status value to set.
      Returns:
      the SBTopicProperties object itself.
    • supportOrdering

      public Boolean supportOrdering()
      Get the supportOrdering property: Value that indicates whether the topic supports ordering.
      Returns:
      the supportOrdering value.
    • withSupportOrdering

      public SBTopicProperties withSupportOrdering(Boolean supportOrdering)
      Set the supportOrdering property: Value that indicates whether the topic supports ordering.
      Parameters:
      supportOrdering - the supportOrdering value to set.
      Returns:
      the SBTopicProperties object itself.
    • autoDeleteOnIdle

      public Duration autoDeleteOnIdle()
      Get the autoDeleteOnIdle property: ISO 8601 timespan idle interval after which the topic is automatically deleted. The minimum duration is 5 minutes.
      Returns:
      the autoDeleteOnIdle value.
    • withAutoDeleteOnIdle

      public SBTopicProperties withAutoDeleteOnIdle(Duration autoDeleteOnIdle)
      Set the autoDeleteOnIdle property: ISO 8601 timespan idle interval after which the topic is automatically deleted. The minimum duration is 5 minutes.
      Parameters:
      autoDeleteOnIdle - the autoDeleteOnIdle value to set.
      Returns:
      the SBTopicProperties object itself.
    • enablePartitioning

      public Boolean enablePartitioning()
      Get the enablePartitioning property: Value that indicates whether the topic to be partitioned across multiple message brokers is enabled.
      Returns:
      the enablePartitioning value.
    • withEnablePartitioning

      public SBTopicProperties withEnablePartitioning(Boolean enablePartitioning)
      Set the enablePartitioning property: Value that indicates whether the topic to be partitioned across multiple message brokers is enabled.
      Parameters:
      enablePartitioning - the enablePartitioning value to set.
      Returns:
      the SBTopicProperties object itself.
    • enableExpress

      public Boolean enableExpress()
      Get the enableExpress property: Value that indicates whether Express Entities are enabled. An express topic holds a message in memory temporarily before writing it to persistent storage.
      Returns:
      the enableExpress value.
    • withEnableExpress

      public SBTopicProperties withEnableExpress(Boolean enableExpress)
      Set the enableExpress property: Value that indicates whether Express Entities are enabled. An express topic holds a message in memory temporarily before writing it to persistent storage.
      Parameters:
      enableExpress - the enableExpress value to set.
      Returns:
      the SBTopicProperties object itself.
    • validate

      public void validate()
      Validates the instance.
      Throws:
      IllegalArgumentException - thrown if the instance is not valid.
    • toJson

      public com.azure.json.JsonWriter toJson(com.azure.json.JsonWriter jsonWriter) throws IOException
      Specified by:
      toJson in interface com.azure.json.JsonSerializable<SBTopicProperties>
      Throws:
      IOException
    • fromJson

      public static SBTopicProperties fromJson(com.azure.json.JsonReader jsonReader) throws IOException
      Reads an instance of SBTopicProperties from the JsonReader.
      Parameters:
      jsonReader - The JsonReader being read.
      Returns:
      An instance of SBTopicProperties if the JsonReader was pointing to an instance of it, or null if it was pointing to JSON null.
      Throws:
      IOException - If an error occurs while reading the SBTopicProperties.