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
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 Details
-
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
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
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
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
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
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
-
getSharedGroup
The shared group is used to check for what shared group the topic permission is applied.- Returns:
- The shared group that this permission matches. Only used for shared subscriptions.
- Since:
- 4.0.0, CE 2019.1
-