
io.relayr.java.api.services.NotificationService Maven / Gradle / Ivy
package io.relayr.java.api.services;
import io.relayr.java.model.json.JsonListResponse;
import io.relayr.java.model.json.JsonRequest;
import io.relayr.java.model.json.JsonResponse;
import io.relayr.java.model.notif.Environment;
import io.relayr.java.model.notif.NotificationPublish;
import io.relayr.java.model.notif.NotificationSubscription;
import io.relayr.java.model.notif.NotificationTransport;
import retrofit.client.Response;
import retrofit.http.Body;
import retrofit.http.DELETE;
import retrofit.http.GET;
import retrofit.http.PATCH;
import retrofit.http.POST;
import retrofit.http.Path;
import retrofit.http.Query;
import rx.Observable;
public interface NotificationService {
//Environments
@GET("/notification-environments")
Observable> getEnvironments(
@Query("projectId") String projectId);
@POST("/notification-environments")
Observable> createEnvironment(
@Body JsonRequest environment);
@GET("/notification-environments/{environmentId}")
Observable> getEnvironment(
@Path("environmentId") String environmentId);
@PATCH("/notification-environments/{environmentId}")
Observable> getEnvironment(
@Path("environmentId") String environmentId,
@Body JsonRequest environment);
@DELETE("/notification-environments/{environmentId}")
Observable deleteEnvironment(
@Path("environmentId") String environmentId);
//Subscriptions
@GET("/notification-environments/{environmentId}/subscriptions")
Observable> getAllSubscriptions(
@Path("environmentId") String environmentId,
@Query("userId") String userId);
@POST("/notification-environments/{environmentId}/subscriptions")
Observable> createSubscription(
@Path("environmentId") String environmentId,
@Body JsonRequest environment);
@GET("/notification-environments/{environmentId}/subscriptions/{subscriptionId}")
Observable> getSubscription(
@Path("environmentId") String environmentId,
@Path("subscriptionId") String subscriptionId);
@DELETE("/notification-environments/{environmentId}/subscriptions/{subscriptionId}")
Observable deleteSubscription(
@Path("environmentId") String environmentId,
@Path("subscriptionId") String subscriptionId);
//Topics
@POST("/notification-environments/{environmentId}/topics")
Observable> createTopic(
@Path("environmentId") String environmentId,
@Body JsonRequest topic);
@GET("/notification-environments/{environmentId}/topics")
Observable> getTopics(
@Path("environmentId") String environmentId);
@DELETE("/notification-environments/{environmentId}/topics/{topicId}")
Observable deleteTopic(
@Path("environmentId") String environmentId,
@Path("topicId") String topic);
//Transports
@POST("/notification-environments/{environmentId}/transports")
Observable> createTransport(
@Path("environmentId") String environmentId,
@Body JsonRequest transport);
@GET("/notification-environments/{environmentId}/transports")
Observable> getTransports(
@Path("environmentId") String environmentId);
@GET("/notification-environments/{environmentId}/transports/{transportId}")
Observable> getTransport(
@Path("environmentId") String environmentId,
@Path("transportId") String transportId);
@PATCH("/notification-environments/{environmentId}/transports/{transportId}")
Observable> updateTransport(
@Path("environmentId") String environmentId,
@Path("transportId") String transportId,
@Body JsonRequest transport);
@DELETE("/notification-environments/{environmentId}/transports/{transportId}")
Observable deleteTransport(
@Path("environmentId") String environmentId,
@Path("transportId") String transportId);
//Publish
@POST("/notification-environments/{environmentId}/publish")
Observable publish(
@Path("environmentId") String environmentId,
@Path("transportId") String transportId,
@Body JsonRequest publish);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy