Interface TopicPermission
-
@DoNotImplement public interface TopicPermission
A topic permission represents an authorization action.The topic permission can be used to allow/deny a PUBLISH or Subscription, if it matches all criteria defined in the topic permission.
- Since:
- 4.0.0, CE 2019.1
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classTopicPermission.MqttActivityThe activity the topic permission is applied to.static classTopicPermission.PermissionTypeRepresents if the PUBLISH/Subscription that matches the topic permission is allowed or denied.static classTopicPermission.QosMatching quality of service levels for the topic permission.static classTopicPermission.RetainRepresents the type of PUBLISH the topic permission is applied for.static classTopicPermission.SharedSubscriptionRepresents the typ of Subscription the topic permission is applied for.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description @NotNull TopicPermission.MqttActivitygetActivity()The activity is used to define for which type of the action (PUBLISH/Subscription) the topic permission is applied.@NotNull TopicPermission.RetaingetPublishRetain()Retain is used to check for what type of PUBLISH message (normal/retained message) the topic permission is applied.@NotNull TopicPermission.QosgetQos()The quality of service (Qos) levels are used to define for which QoS levels the topic permission is applied.@NotNull StringgetSharedGroup()The shared group is used to check for what shared group the topic permission is applied.@NotNull TopicPermission.SharedSubscriptiongetSharedSubscription()The shared subscription is used to check for what type of Subscription (normal/shared subscription) the topic permission is applied.@NotNull StringgetTopicFilter()The topic filter is used to define for what topic filter the topic permission is applied.@NotNull TopicPermission.PermissionTypegetType()If the PUBLISH/Subscription matches all criteria defined in the topic permission, the permission type decides if the PUBLISH/Subscription is authorized or not.
-
-
-
Method Detail
-
getTopicFilter
@NotNull String getTopicFilter()
The topic filter is used to define for what topic filter the topic permission is applied.- Returns:
- The topic filter for this permission.
- Since:
- 4.0.0, CE 2019.1
-
getType
@NotNull TopicPermission.PermissionType getType()
If the PUBLISH/Subscription matches all criteria defined in the topic permission, the permission type decides if the PUBLISH/Subscription is authorized or not.- Returns:
- The
TopicPermission.PermissionTypefor this permission. - Since:
- 4.0.0, CE 2019.1
-
getQos
@NotNull TopicPermission.Qos getQos()
The quality of service (Qos) levels are used to define for which QoS levels the topic permission is applied.- Returns:
- The
TopicPermission.Qosfor this permission. - Since:
- 4.0.0, CE 2019.1
-
getActivity
@NotNull TopicPermission.MqttActivity getActivity()
The activity is used to define for which type of the action (PUBLISH/Subscription) the topic permission is applied.- Returns:
- The
TopicPermission.MqttActivityfor this permission. - Since:
- 4.0.0, CE 2019.1
-
getPublishRetain
@NotNull TopicPermission.Retain getPublishRetain()
Retain is used to check for what type of PUBLISH message (normal/retained message) the topic permission is applied.- Returns:
- The
TopicPermission.Retainfor this permission. Only used for PUBLISH. - Since:
- 4.0.0, CE 2019.1
-
getSharedSubscription
@NotNull TopicPermission.SharedSubscription getSharedSubscription()
The shared subscription is used to check for what type of Subscription (normal/shared subscription) the topic permission is applied.- Returns:
- The
TopicPermission.SharedSubscriptionfor this permission. Only used for Subscription. - Since:
- 4.0.0, CE 2019.1
-
-