Interface DeliveryApi

All Superinterfaces:
ApiService

@Path("/api/v1/deliveries") @Produces("application/json") @Consumes("application/json") public interface DeliveryApi extends ApiService
Operations on release deliveries.
  • Method Details

    • serviceName

      default String serviceName()
      Specified by:
      serviceName in interface ApiService
    • getDelivery

      @GET @Path("/{deliveryId:.*Delivery[^/]*}") Delivery getDelivery(@PathParam("deliveryId") String deliveryId)
      Returns a delivery by ID.
      Parameters:
      deliveryId - the delivery identifier.
      Returns:
      the delivery which has the given identifier.
    • updateDelivery

      @PUT @Path("/{deliveryId:.*Delivery[^/]*}") Delivery updateDelivery(@PathParam("deliveryId") String deliveryId, Delivery delivery)
      Updates a delivery.
      Parameters:
      deliveryId - the delivery identifier.
      delivery - new contents of the delivery.
      Returns:
      the updated delivery.
    • updateDelivery

      Delivery updateDelivery(Delivery delivery)
      Updates a delivery.
      Parameters:
      delivery - new contents of the delivery.
      Returns:
      the updated delivery.
    • deleteDelivery

      @DELETE @Path("/{deliveryId:.*Delivery[^/]*}") void deleteDelivery(@PathParam("deliveryId") String deliveryId)
      Deletes a delivery.
      Parameters:
      deliveryId - the delivery identifier.
    • searchDeliveries

      @POST @Path("search") List<Delivery> searchDeliveries(DeliveryFilters deliveryFilters, @DefaultValue("0") @QueryParam("page") Long page, @DefaultValue("100") @QueryParam("resultsPerPage") Long resultsPerPage, @DefaultValue("START_DATE") @QueryParam("orderBy") DeliveryOrderMode orderBy)
      Search deliveries by filters.
      Parameters:
      deliveryFilters - the search criteria.
      page - the page of results to return. Default value is 0.
      resultsPerPage - the number of results per page. Default and maximum value is 100.
      orderBy - sort options by which to sort the deliveries. Leave null for ordering by title.
      Returns:
      the list of matching deliveries.
    • searchDeliveries

      List<Delivery> searchDeliveries(DeliveryFilters deliveryFilters, DeliveryOrderMode orderBy)
      Search deliveries by filters with default pagination.
      Parameters:
      deliveryFilters - the search criteria.
      orderBy - sort options by which to sort the deliveries. Leave null for ordering by title.
      Returns:
      the list of matching deliveries.
    • searchDeliveries

      List<Delivery> searchDeliveries(DeliveryFilters deliveryFilters)
      Search deliveries by filters with default pagination and ordering by title.
      Parameters:
      deliveryFilters - the search criteria.
      Returns:
      the list of matching deliveries.
    • getDeliveryTimeline

      @GET @Path("/{deliveryId:.*Delivery[^/]*}/timeline") DeliveryTimeline getDeliveryTimeline(@PathParam("deliveryId") String deliveryId)
    • getReleases

      @GET @Path("/{deliveryId:.*Delivery[^/]*}/releases") List<DeliveryFlowReleaseInfo> getReleases(@PathParam("deliveryId") String deliveryId)
      Returns releases associated with a given delivery.
      Parameters:
      deliveryId - the delivery identifier.
      Returns:
      the release info associated with the delivery.
    • registerSubscriber

      SubscriptionResult registerSubscriber(String deliveryId, Subscriber subscriber)
    • createTrackedItem

      @POST @Path("/{deliveryId:.*Delivery[^/]*}/tracked-items") TrackedItem createTrackedItem(@PathParam("deliveryId") String deliveryId, TrackedItem item)
      Adds a tracked item to a delivery.
      Parameters:
      deliveryId - the delivery identifier.
      item - the item to be added to the delivery.
      Returns:
      the created item.
    • getTrackedItems

      @GET @Path("/{deliveryId:.*Delivery[^/]*}/tracked-items") List<TrackedItem> getTrackedItems(@PathParam("deliveryId") String deliveryId)
      Returns the tracked items associated with given delivery.
      Parameters:
      deliveryId - the delivery identifier.
      Returns:
      tracked items associated with the delivery.
    • updateTrackedItem

      @PUT @Path("/{itemId:.*TrackedItem[^/]*}") TrackedItem updateTrackedItem(@PathParam("itemId") String itemId, TrackedItem item)
      Updates a tracked item.
      Parameters:
      itemId - the full item identifier.
      item - new contents of the item.
      Returns:
      the updated item.
    • updateTrackedItem

      TrackedItem updateTrackedItem(TrackedItem item)
      Updates a tracked item.
      Parameters:
      item - new contents of the item.
      Returns:
      the updated item.
    • deleteTrackedItem

      @DELETE @Path("/{itemId:.*TrackedItem[^/]*}") void deleteTrackedItem(@PathParam("itemId") String itemId)
      Deletes a tracked item.
      Parameters:
      itemId - the full item identifier.
    • descopeTrackedItem

      @PUT @Path("/{itemId:.*TrackedItem[^/]*}/descope") void descopeTrackedItem(@PathParam("itemId") String itemId)
      Descopes a tracked item.
      Parameters:
      itemId - the full item identifier.
    • rescopeTrackedItem

      @PUT @Path("/{itemId:.*TrackedItem[^/]*}/rescope") void rescopeTrackedItem(@PathParam("itemId") String itemId)
      Rescopes a tracked item.
      Parameters:
      itemId - the full item identifier.
    • completeTrackedItem

      @PUT @Path("/{stageId:.*Stage[^/]*}/{itemId:.*TrackedItem[^/]*}/complete") void completeTrackedItem(@PathParam("stageId") String stageId, @PathParam("itemId") String itemId)
      Completes a tracked item in stage.
      Parameters:
      stageId - the full stage identifier.
      itemId - the item identifier.
    • completeTrackedItem

      @PUT @Path("/{stageId:.*Stage[^/]*}/{itemId:.*TrackedItem[^/]*}/{releaseId:.*Release[^/]*}/complete") void completeTrackedItem(@PathParam("stageId") String stageId, @PathParam("itemId") String itemId, @PathParam("releaseId") String releaseId)
      Completes a tracked item in stage.
      Parameters:
      stageId - the full stage identifier.
      itemId - the item identifier.
      releaseId - the release identifier that completed item.
    • skipTrackedItem

      @PUT @Path("/{stageId:.*Stage[^/]*}/{itemId:.*TrackedItem[^/]*}/skip") void skipTrackedItem(@PathParam("stageId") String stageId, @PathParam("itemId") String itemId)
      Skips a tracked item in stage.
      Parameters:
      stageId - the full stage identifier.
      itemId - the item identifier.
    • resetTrackedItem

      @PUT @Path("/{stageId:.*Stage[^/]*}/{itemId:.*TrackedItem[^/]*}/reset") void resetTrackedItem(@PathParam("stageId") String stageId, @PathParam("itemId") String itemId)
    • registerTrackedItems

      void registerTrackedItems(String deliveryId, List<String> itemIdOrTitles, String fromReleaseId)
    • markTrackedItemsInStage

      List<TrackedItem> markTrackedItemsInStage(String deliveryId, String stageIdOrTitle, List<String> itemIdOrTitles, TrackedItemStatus status, boolean precedingStages, String releaseId)
    • getStages

      @GET @Path("/{deliveryId:.*Delivery[^/]*}/stages") List<Stage> getStages(@PathParam("deliveryId") String deliveryId)
      Returns the stages in a given delivery.
      Parameters:
      deliveryId - the delivery identifier.
      Returns:
      stages in the delivery.
    • completeStage

      @POST @Path("/{stageId:.*Stage[^/]*}/complete") void completeStage(@PathParam("stageId") String stageId)
      Completes a stage in a delivery.
      Parameters:
      stageId - the full stage identifier.
    • reopenStage

      @POST @Path("/{stageId:.*Stage[^/]*}/reopen") void reopenStage(@PathParam("stageId") String stageId)
      Reopens a closed stage in a delivery.
      Parameters:
      stageId - the full stage identifier.
    • updateStage

      Stage updateStage(Stage stage)
      Updates a stage in a delivery.
      Parameters:
      stage - new contents of the stage.
      Returns:
      the updated stage.
    • updateStage

      @PUT @Path("/{stageId:.*Stage[^/]*}") Stage updateStage(@PathParam("stageId") String stageId, Stage stage)
      Updates a stage in a delivery.
      Parameters:
      stageId - the full stage identifier.
      stage - new contents of the stage.
      Returns:
      the updated stage.
    • updateTransition

      @PUT @Path("/{transitionId:.*Transition[^/]*}") Transition updateTransition(@PathParam("transitionId") String transitionId, Transition transition)
      Updates a transition on a delivery.
      Parameters:
      transitionId - the full transition identifier.
      transition - new contents of the transition.
      Returns:
      the updated transition
    • updateTransition

      Transition updateTransition(Transition transition)
      Updates a transition on a delivery.
      Parameters:
      transition - new contents of the transition.
      Returns:
      the updated transition
    • completeTransition

      @POST @Path("/{transitionId:.*Transition[^/]*}/complete") void completeTransition(@PathParam("transitionId") String transitionId, CompleteTransition completeTransition)
      Executes a transition on a delivery manually.
      Parameters:
      transitionId - the full transition identifier.
      completeTransition - the transition completion parameters.