GWT 2.7.0

com.google.web.bindery.requestfactory.server
Class ResolverServiceLayer

java.lang.Object
  extended by com.google.web.bindery.requestfactory.server.ServiceLayer
      extended by com.google.web.bindery.requestfactory.server.ServiceLayerDecorator
          extended by com.google.web.bindery.requestfactory.server.ResolverServiceLayer

final class ResolverServiceLayer
extends ServiceLayerDecorator

Implements all of the resolution methods in ServiceLayer.


Field Summary
 
Fields inherited from class com.google.web.bindery.requestfactory.server.ServiceLayerDecorator
next
 
Fields inherited from class com.google.web.bindery.requestfactory.server.ServiceLayer
top
 
Constructor Summary
ResolverServiceLayer()
           
 
Method Summary
 java.lang.ClassLoader getDomainClassLoader()
          Returns the ClassLoader that should be used when attempting to access domain classes or resources.
 java.lang.Class<? extends BaseProxy> resolveClass(java.lang.String typeToken)
          Given a type token previously returned from ServiceLayer.resolveTypeToken(Class), return the Class literal associated with the token.
<T> java.lang.Class<? extends T>
resolveClientType(java.lang.Class<?> domainClass, java.lang.Class<T> clientClass, boolean required)
          Determine the type used by the client code to represent a given domain type.
 java.lang.Class<?> resolveDomainClass(java.lang.Class<?> clazz)
          Determine the domain (server-side) type that the given client type is mapped to.
 java.lang.reflect.Method resolveDomainMethod(java.lang.String operation)
          Return the domain service method associated with a RequestContext method declaration.
 java.lang.Class<? extends RequestContext> resolveRequestContext(java.lang.String operation)
          Find a RequestContext that should be used to fulfill the requested operation.
 java.lang.reflect.Method resolveRequestContextMethod(java.lang.String operation)
          Find a RequestContext method declaration by name.
 java.lang.Class<? extends RequestFactory> resolveRequestFactory(java.lang.String binaryName)
          Loads and validates a RequestFactory interface.
 java.lang.Class<?> resolveServiceClass(java.lang.Class<? extends RequestContext> requestContextClass)
          Given a RequestContext method, find the service class referenced in the Service or ServiceName annotation.
 java.lang.String resolveTypeToken(java.lang.Class<? extends BaseProxy> clazz)
          Return a string used to represent the given type in the wire protocol.
 
Methods inherited from class com.google.web.bindery.requestfactory.server.ServiceLayerDecorator
createDomainObject, createLocator, createServiceInstance, createServiceLocator, die, getGetter, getId, getIdType, getNext, getProperty, getRequestReturnType, getSetter, getTop, getVersion, invoke, isLive, loadDomainObject, loadDomainObjects, report, report, requiresServiceLocator, resolveLocator, resolveServiceLocator, setProperty, validate
 
Methods inherited from class com.google.web.bindery.requestfactory.server.ServiceLayer
create
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ResolverServiceLayer

ResolverServiceLayer()
Method Detail

getDomainClassLoader

public java.lang.ClassLoader getDomainClassLoader()
Description copied from class: ServiceLayer
Returns the ClassLoader that should be used when attempting to access domain classes or resources.

The default implementation returns Thread.currentThread().getContextClassLoader().

Overrides:
getDomainClassLoader in class ServiceLayerDecorator

resolveClass

public java.lang.Class<? extends BaseProxy> resolveClass(java.lang.String typeToken)
Description copied from class: ServiceLayer
Given a type token previously returned from ServiceLayer.resolveTypeToken(Class), return the Class literal associated with the token.

Overrides:
resolveClass in class ServiceLayerDecorator
Parameters:
typeToken - a string token
Returns:
the type represented by the token

resolveClientType

public <T> java.lang.Class<? extends T> resolveClientType(java.lang.Class<?> domainClass,
                                                          java.lang.Class<T> clientClass,
                                                          boolean required)
Description copied from class: ServiceLayer
Determine the type used by the client code to represent a given domain type. If multiple proxy types have been mapped to the same domain type, the clientType parameter is used to ensure assignability.

Overrides:
resolveClientType in class ServiceLayerDecorator
Parameters:
domainClass - the server-side type to be transported to the client
clientClass - the type to which the returned type must be assignable
required - if true and no mapping is available, throw an exception, otherwise the method will return null
Returns:
a class that represents domainClass on the client which is assignable to clientType

resolveDomainClass

public java.lang.Class<?> resolveDomainClass(java.lang.Class<?> clazz)
Description copied from class: ServiceLayer
Determine the domain (server-side) type that the given client type is mapped to.

Overrides:
resolveDomainClass in class ServiceLayerDecorator
Parameters:
clazz - a client-side type
Returns:
the domain type that clientType represents

resolveDomainMethod

public java.lang.reflect.Method resolveDomainMethod(java.lang.String operation)
Description copied from class: ServiceLayer
Return the domain service method associated with a RequestContext method declaration. The requestContextMethod will have been previously resolved by #resolveRequestContextMethod(String, String).

Overrides:
resolveDomainMethod in class ServiceLayerDecorator
Returns:
the domain service method that should be invoked

resolveRequestContext

public java.lang.Class<? extends RequestContext> resolveRequestContext(java.lang.String operation)
Description copied from class: ServiceLayer
Find a RequestContext that should be used to fulfill the requested operation.

Overrides:
resolveRequestContext in class ServiceLayerDecorator
Parameters:
operation - the operation
Returns:
the RequestContext or null if no RequestContext exists that can fulfill the operation

resolveRequestContextMethod

public java.lang.reflect.Method resolveRequestContextMethod(java.lang.String operation)
Description copied from class: ServiceLayer
Find a RequestContext method declaration by name.

Overrides:
resolveRequestContextMethod in class ServiceLayerDecorator
Parameters:
operation - the operation's name
Returns:
the method declaration, or null if the method does not exist

resolveRequestFactory

public java.lang.Class<? extends RequestFactory> resolveRequestFactory(java.lang.String binaryName)
Description copied from class: ServiceLayer
Loads and validates a RequestFactory interface.

Overrides:
resolveRequestFactory in class ServiceLayerDecorator
Parameters:
binaryName - the RequestFactory's type token (usually the type's binary name)
Returns:
the RequestFactory type

resolveServiceClass

public java.lang.Class<?> resolveServiceClass(java.lang.Class<? extends RequestContext> requestContextClass)
Description copied from class: ServiceLayer
Given a RequestContext method, find the service class referenced in the Service or ServiceName annotation.

Overrides:
resolveServiceClass in class ServiceLayerDecorator
Parameters:
requestContextClass - a RequestContext interface
Returns:
the type of service to use

resolveTypeToken

public java.lang.String resolveTypeToken(java.lang.Class<? extends BaseProxy> clazz)
Description copied from class: ServiceLayer
Return a string used to represent the given type in the wire protocol.

Overrides:
resolveTypeToken in class ServiceLayerDecorator
Parameters:
clazz - a client-side EntityProxy or ValueProxy type
Returns:
the type token used to represent the proxy type

GWT 2.7.0