Class RecordProvider

  • All Implemented Interfaces:
    org.forgerock.json.resource.CollectionResourceProvider

    public class RecordProvider
    extends Object
    implements org.forgerock.json.resource.CollectionResourceProvider
    CREST collection service dedicated to persist JSON objects (other types are not supported: arrays, primitives, and null).

    Usage example:

         
         // Persists { "key" : [ 42 ] } and returns the server-created ID to use for future references
         requestHandler.handleCreate(context, newCreateRequest("record", json(object(field("key", array(42))))))
                       .then((response) -> {
                           System.out.println("Created resource with ID: " + response.getId());
                       });
         
     
    • Constructor Summary

      Constructors 
      Constructor Description
      RecordProvider​(RecordService service)
      Creates a new resource provider delegating to the given service for storage.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.forgerock.util.promise.Promise<org.forgerock.json.resource.ActionResponse,​org.forgerock.json.resource.ResourceException> actionCollection​(org.forgerock.services.context.Context context, org.forgerock.json.resource.ActionRequest request)  
      org.forgerock.util.promise.Promise<org.forgerock.json.resource.ActionResponse,​org.forgerock.json.resource.ResourceException> actionInstance​(org.forgerock.services.context.Context context, String resourceId, org.forgerock.json.resource.ActionRequest request)  
      org.forgerock.util.promise.Promise<org.forgerock.json.resource.ResourceResponse,​org.forgerock.json.resource.ResourceException> createInstance​(org.forgerock.services.context.Context context, org.forgerock.json.resource.CreateRequest request)  
      org.forgerock.util.promise.Promise<org.forgerock.json.resource.ResourceResponse,​org.forgerock.json.resource.ResourceException> deleteInstance​(org.forgerock.services.context.Context context, String resourceId, org.forgerock.json.resource.DeleteRequest request)  
      org.forgerock.util.promise.Promise<org.forgerock.json.resource.ResourceResponse,​org.forgerock.json.resource.ResourceException> patchInstance​(org.forgerock.services.context.Context context, String resourceId, org.forgerock.json.resource.PatchRequest request)  
      org.forgerock.util.promise.Promise<org.forgerock.json.resource.QueryResponse,​org.forgerock.json.resource.ResourceException> queryCollection​(org.forgerock.services.context.Context context, org.forgerock.json.resource.QueryRequest request, org.forgerock.json.resource.QueryResourceHandler resourceHandler)  
      org.forgerock.util.promise.Promise<org.forgerock.json.resource.ResourceResponse,​org.forgerock.json.resource.ResourceException> readInstance​(org.forgerock.services.context.Context context, String resourceId, org.forgerock.json.resource.ReadRequest request)  
      org.forgerock.util.promise.Promise<org.forgerock.json.resource.ResourceResponse,​org.forgerock.json.resource.ResourceException> updateInstance​(org.forgerock.services.context.Context context, String resourceId, org.forgerock.json.resource.UpdateRequest request)  
    • Constructor Detail

      • RecordProvider

        public RecordProvider​(RecordService service)
        Creates a new resource provider delegating to the given service for storage.
        Parameters:
        service - storage service
    • Method Detail

      • actionCollection

        public org.forgerock.util.promise.Promise<org.forgerock.json.resource.ActionResponse,​org.forgerock.json.resource.ResourceException> actionCollection​(org.forgerock.services.context.Context context,
                                                                                                                                                                   org.forgerock.json.resource.ActionRequest request)
        Specified by:
        actionCollection in interface org.forgerock.json.resource.CollectionResourceProvider
      • actionInstance

        public org.forgerock.util.promise.Promise<org.forgerock.json.resource.ActionResponse,​org.forgerock.json.resource.ResourceException> actionInstance​(org.forgerock.services.context.Context context,
                                                                                                                                                                 String resourceId,
                                                                                                                                                                 org.forgerock.json.resource.ActionRequest request)
        Specified by:
        actionInstance in interface org.forgerock.json.resource.CollectionResourceProvider
      • createInstance

        public org.forgerock.util.promise.Promise<org.forgerock.json.resource.ResourceResponse,​org.forgerock.json.resource.ResourceException> createInstance​(org.forgerock.services.context.Context context,
                                                                                                                                                                   org.forgerock.json.resource.CreateRequest request)
        Specified by:
        createInstance in interface org.forgerock.json.resource.CollectionResourceProvider
      • deleteInstance

        public org.forgerock.util.promise.Promise<org.forgerock.json.resource.ResourceResponse,​org.forgerock.json.resource.ResourceException> deleteInstance​(org.forgerock.services.context.Context context,
                                                                                                                                                                   String resourceId,
                                                                                                                                                                   org.forgerock.json.resource.DeleteRequest request)
        Specified by:
        deleteInstance in interface org.forgerock.json.resource.CollectionResourceProvider
      • patchInstance

        public org.forgerock.util.promise.Promise<org.forgerock.json.resource.ResourceResponse,​org.forgerock.json.resource.ResourceException> patchInstance​(org.forgerock.services.context.Context context,
                                                                                                                                                                  String resourceId,
                                                                                                                                                                  org.forgerock.json.resource.PatchRequest request)
        Specified by:
        patchInstance in interface org.forgerock.json.resource.CollectionResourceProvider
      • queryCollection

        public org.forgerock.util.promise.Promise<org.forgerock.json.resource.QueryResponse,​org.forgerock.json.resource.ResourceException> queryCollection​(org.forgerock.services.context.Context context,
                                                                                                                                                                 org.forgerock.json.resource.QueryRequest request,
                                                                                                                                                                 org.forgerock.json.resource.QueryResourceHandler resourceHandler)
        Specified by:
        queryCollection in interface org.forgerock.json.resource.CollectionResourceProvider
      • readInstance

        public org.forgerock.util.promise.Promise<org.forgerock.json.resource.ResourceResponse,​org.forgerock.json.resource.ResourceException> readInstance​(org.forgerock.services.context.Context context,
                                                                                                                                                                 String resourceId,
                                                                                                                                                                 org.forgerock.json.resource.ReadRequest request)
        Specified by:
        readInstance in interface org.forgerock.json.resource.CollectionResourceProvider
      • updateInstance

        public org.forgerock.util.promise.Promise<org.forgerock.json.resource.ResourceResponse,​org.forgerock.json.resource.ResourceException> updateInstance​(org.forgerock.services.context.Context context,
                                                                                                                                                                   String resourceId,
                                                                                                                                                                   org.forgerock.json.resource.UpdateRequest request)
        Specified by:
        updateInstance in interface org.forgerock.json.resource.CollectionResourceProvider