Interface ResponseBuilderLocator<T extends WebApplicationService>

  • Type Parameters:
    T - the type parameter
    All Superinterfaces:
    java.io.Serializable
    Functional Interface:
    This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

    @FunctionalInterface
    public interface ResponseBuilderLocator<T extends WebApplicationService>
    extends java.io.Serializable
    This is ResponseBuilderLocator which attempts to locate ResponseBuilder objects registered in the application context. This is an abstraction that is separated from the actual service and response API to remove issues with serialization and such. Services are no longer responsible for producing a response and their response builder will need to be located via this class. This frees up the service API quite a bit to inject all sorts of components into builders to accommodate for various use cases and not have to worry about whether a given field in a builder is serialization friendly.
    Since:
    5.1.0
    • Method Detail

      • locate

        ResponseBuilder<T> locate​(T service)
        Locate response builder appropriate for the given service.
        Parameters:
        service - the service
        Returns:
        the response builder