Package step.plugins.notification
Class NotificationServices
- java.lang.Object
-
- step.framework.server.AbstractServices<step.core.access.User>
-
- step.core.deployment.AbstractStepServices
-
- step.plugins.notification.NotificationServices
-
@Singleton @Path("notifications") public class NotificationServices extends step.core.deployment.AbstractStepServices
-
-
Field Summary
Fields Modifier and Type Field Description static org.slf4j.Logger
logger
protected NotificationEngine
notificationEngine
protected NotificationGatewayConfigurationAccessor
notificationGatewayConfigurationAccessor
protected NotificationSubscriptionAccessor
notificationSubscriptionAccessor
-
Constructor Summary
Constructors Constructor Description NotificationServices()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
deleteNotificationGatewayConfiguration(String id)
void
deleteNotificationSubscription(String id)
List<NotificationSubscription>
getAllNotificationSubscriptions(Integer skip, Integer limit)
NotificationGatewayConfiguration
getNotificationGatewayConfiguration(String id)
List<NotificationGatewayConfiguration>
getNotificationGatewayConfigurations()
List<step.plugins.notification.NotificationServices.GatewayInfo>
getNotificationGatewayNames()
NotificationSubscription
getNotificationSubscription(String id)
List<NotificationSubscription>
getNotificationSubscriptionsByPlanRef(step.core.repositories.RepositoryObjectReference planRef)
void
init()
void
saveNotificationGatewayConfiguration(NotificationGatewayConfiguration gatewayConfiguration)
void
saveNotificationSubscription(NotificationSubscription subscription)
-
Methods inherited from class step.core.deployment.AbstractStepServices
getContext, getExecutionRunnable, getObjectEnricher, getObjectFilter, getScheduler
-
-
-
-
Field Detail
-
notificationGatewayConfigurationAccessor
protected NotificationGatewayConfigurationAccessor notificationGatewayConfigurationAccessor
-
notificationSubscriptionAccessor
protected NotificationSubscriptionAccessor notificationSubscriptionAccessor
-
notificationEngine
protected NotificationEngine notificationEngine
-
logger
public static final org.slf4j.Logger logger
-
-
Method Detail
-
init
@PostConstruct public void init() throws Exception
- Overrides:
init
in classstep.core.deployment.AbstractStepServices
- Throws:
Exception
-
saveNotificationGatewayConfiguration
@POST @Consumes("application/json") @Path("/gateway") public void saveNotificationGatewayConfiguration(NotificationGatewayConfiguration gatewayConfiguration)
-
getNotificationGatewayConfiguration
@GET @Consumes("application/json") @Path("/gateway/{id}") public NotificationGatewayConfiguration getNotificationGatewayConfiguration(@PathParam("id") String id)
-
deleteNotificationGatewayConfiguration
@DELETE @Consumes("application/json") @Path("/gateway/{id}") public void deleteNotificationGatewayConfiguration(@PathParam("id") String id)
-
getNotificationGatewayConfigurations
@GET @Consumes("application/json") @Path("/gateway/list") public List<NotificationGatewayConfiguration> getNotificationGatewayConfigurations()
-
getNotificationGatewayNames
@GET @Consumes("application/json") @Path("/gateway/list/info") public List<step.plugins.notification.NotificationServices.GatewayInfo> getNotificationGatewayNames()
- Returns:
- the names of the available gateways. This service is needed for the definition of new subscriptions and is thus requiring the right notification-subscription-write
-
saveNotificationSubscription
@POST @Consumes("application/json") @Path("/subscription") public void saveNotificationSubscription(NotificationSubscription subscription)
-
getNotificationSubscription
@GET @Consumes("application/json") @Path("/subscription/{id}") public NotificationSubscription getNotificationSubscription(@PathParam("id") String id)
-
deleteNotificationSubscription
@DELETE @Consumes("application/json") @Path("/subscription/{id}") public void deleteNotificationSubscription(@PathParam("id") String id)
-
getNotificationSubscriptionsByPlanRef
@POST @Consumes("application/json") @Path("/subscription/byplan") public List<NotificationSubscription> getNotificationSubscriptionsByPlanRef(step.core.repositories.RepositoryObjectReference planRef)
-
getAllNotificationSubscriptions
@GET @Path("/subscription/all") @Produces("application/json") public List<NotificationSubscription> getAllNotificationSubscriptions(@QueryParam("skip") Integer skip, @QueryParam("limit") Integer limit)
-
-