# Package com.google.web.bindery.requestfactory.server

Server-side classes for mediating between the client-side and the persistent datastore. This package contains classes that can receive client-side read and write requests in the JSON format, perform the necessary operations on the persistent datastore, and return the results in JSON format.

Since:
  GWT 2.1

- Interface Summary
  Interface | Description
  --- | ---
  ExceptionHandler | Handles an exception produced while processing a request.
  RequestFactoryJarExtractor.Emitter | Describes a way to emit the contents of a classpath, typically into a JAR or filesystem directory.
  RequestFactoryJarExtractor.Loader | Abstracts the mechanism by which class files are loaded.

- Class Summary
  Class | Description
  --- | ---
  DefaultExceptionHandler | Default implementation for handling exceptions thrown while processing a request.
  FindServiceLayer | Allows the use of a very short operation name for the find method.
  LocatorServiceLayer | Adds support to the ServiceLayer chain for using `Locator` and `ServiceLocator` helper objects.
  Logging | Server-side object that handles log messages sent by `RequestFactoryLogHandler`.
  Pair<A,​B> | Simple pair class.
  ReflectiveServiceLayer | Implements all methods that interact with domain objects.
  RequestFactoryJarExtractor | Deprecated. Will not be deleted from source, but will no longer be included in GWT artifacts, as this is only intended for use as a build tool.
  RequestFactoryJarExtractor.ClassLoaderLoader | An implementation of `RequestFactoryJarExtractor.Loader` that uses a `ClassLoader` to retrieve the class files.
  RequestFactoryJarExtractor.ErrorContext | Improves error messages by providing context for the user.
  RequestFactoryJarExtractor.JarEmitter | An Emitter implementation that creates a jar file.
  RequestFactoryServlet | Handles GWT RequestFactory JSON requests.
  RequestState | Encapsulates all state relating to the processing of a single request so that the SimpleRequestProcessor can be stateless.
  Resolver | Responsible for converting between domain and client entities.
  ResolverServiceLayer | Implements all of the resolution methods in ServiceLayer.
  ServiceLayer | The ServiceLayer mediates all interactions between the `SimpleRequestProcessor` and the domain environment.
  ServiceLayerCache | A cache for idempotent methods in `ServiceLayer`.
  ServiceLayerDecorator | Users that intend to alter how RequestFactory interacts with the domain environment can extend this type and provide it to `ServiceLayer.create(ServiceLayerDecorator...)`.
  SimpleRequestProcessor | Processes request payloads from a RequestFactory client.
  SimpleRequestProcessor.IdToEntityMap | This parameterization is so long, it improves readability to have a specific type.

- Enum Summary
  Enum | Description
  --- | ---
  RequestFactoryJarExtractor.Mode | Controls what is emitted by the tool.

- Exception Summary
  Exception | Description
  --- | ---
  DeadEntityException | Indicates the user attempted to perform an operation on an irretrievable entity.
  ReportableException | Encapsulates exceptions that should be thrown back to the client.
  UnexpectedException | Encapsulates exceptions that indicate something went wrong in RequestFactory code.