Class EndpointRegistry

java.lang.Object
org.forgerock.openig.http.EndpointRegistry

public final class EndpointRegistry extends Object
Registry for Identity Gateway REST API endpoints.

Components can use that class to register additional endpoints into the /openig/api namespace:

  • /openig/api/system/objects/[heap-object-name] for components defined in config.json
  • /openig/api/system/objects/.../[router-name]/routes/[route-name]/objects/[heap-object-name] for components defined inside routes
See Also:
  • Constructor Details

    • EndpointRegistry

      public EndpointRegistry(Router router, String path, boolean restricted)
      Creates a registry around the given Router instance. Registered endpoints will be sub-elements of the given router.
      Parameters:
      router - base Router
      path - path for this registry
      restricted - true if this registry is restricted
  • Method Details

    • register

      public EndpointRegistry.Registration register(String name, Handler handler)
      Registers a new endpoint under the given name.

      Equivalent to calling this Router code:

           
           router.addRoute(requestUriMatcher(STARTS_WITH, name), handler);
           
       
      Parameters:
      name - registered endpoint name
      handler - endpoint implementation
      Returns:
      a handle for later endpoint un-registration
    • tryRegister

      public <E extends Exception> Optional<EndpointRegistry.Registration> tryRegister(String name, Supplier<Handler,E> handler) throws E
      Registers a new endpoint under the given name, but only if the registry is not restricted.

      Equivalent to calling this Router code:

           
           router.addRoute(requestUriMatcher(STARTS_WITH, name), handler);
           
       
      Type Parameters:
      E - exception that can be thrown by the handler supplier
      Parameters:
      name - registered endpoint name
      handler - Supplier of an endpoint handler
      Returns:
      a handle for later endpoint un-registration
      Throws:
      E extends Exception
    • pathInfo

      public String pathInfo(String name)
      Returns the path info computed by appending the given name to this registry's path.
      Parameters:
      name - path element to append
      Returns:
      composed path
    • getPath

      public String getPath()
      Returns this registry's base path.
      Returns:
      this registry's base path.
    • restricted

      public boolean restricted()
      Returns true if this registry is restricted.
      Returns:
      true if this registry is restricted.