Class ResolverServiceLayer
- java.lang.Object
-
- com.google.web.bindery.requestfactory.server.ServiceLayer
-
- com.google.web.bindery.requestfactory.server.ServiceLayerDecorator
-
- 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
Constructors Constructor Description ResolverServiceLayer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.ClassLoadergetDomainClassLoader()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 fromServiceLayer.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.MethodresolveDomainMethod(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.MethodresolveRequestContextMethod(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 aRequestContextmethod, find the service class referenced in theServiceorServiceNameannotation.java.lang.StringresolveTypeToken(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
-
-
-
-
Method Detail
-
getDomainClassLoader
public java.lang.ClassLoader getDomainClassLoader()
Description copied from class:ServiceLayerReturns the ClassLoader that should be used when attempting to access domain classes or resources.The default implementation returns
Thread.currentThread().getContextClassLoader().- Overrides:
getDomainClassLoaderin classServiceLayerDecorator
-
resolveClass
public java.lang.Class<? extends BaseProxy> resolveClass(java.lang.String typeToken)
Description copied from class:ServiceLayerGiven a type token previously returned fromServiceLayer.resolveTypeToken(Class), return the Class literal associated with the token.- Overrides:
resolveClassin classServiceLayerDecorator- 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:ServiceLayerDetermine 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, theclientTypeparameter is used to ensure assignability.- Overrides:
resolveClientTypein classServiceLayerDecorator- Parameters:
domainClass- the server-side type to be transported to the clientclientClass- the type to which the returned type must be assignablerequired- iftrueand no mapping is available, throw an exception, otherwise the method will returnnull- Returns:
- a class that represents
domainClasson the client which is assignable toclientType
-
resolveDomainClass
public java.lang.Class<?> resolveDomainClass(java.lang.Class<?> clazz)
Description copied from class:ServiceLayerDetermine the domain (server-side) type that the given client type is mapped to.- Overrides:
resolveDomainClassin classServiceLayerDecorator- Parameters:
clazz- a client-side type- Returns:
- the domain type that
clientTyperepresents
-
resolveDomainMethod
public java.lang.reflect.Method resolveDomainMethod(java.lang.String operation)
Description copied from class:ServiceLayerReturn the domain service method associated with a RequestContext method declaration. TherequestContextMethodwill have been previously resolved by#resolveRequestContextMethod(String, String).- Overrides:
resolveDomainMethodin classServiceLayerDecorator- 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:ServiceLayerFind a RequestContext that should be used to fulfill the requested operation.- Overrides:
resolveRequestContextin classServiceLayerDecorator- Parameters:
operation- the operation- Returns:
- the RequestContext or
nullif no RequestContext exists that can fulfill the operation
-
resolveRequestContextMethod
public java.lang.reflect.Method resolveRequestContextMethod(java.lang.String operation)
Description copied from class:ServiceLayerFind a RequestContext method declaration by name.- Overrides:
resolveRequestContextMethodin classServiceLayerDecorator- Parameters:
operation- the operation's name- Returns:
- the method declaration, or
nullif the method does not exist
-
resolveRequestFactory
public java.lang.Class<? extends RequestFactory> resolveRequestFactory(java.lang.String binaryName)
Description copied from class:ServiceLayerLoads and validates a RequestFactory interface.- Overrides:
resolveRequestFactoryin classServiceLayerDecorator- 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:ServiceLayerGiven aRequestContextmethod, find the service class referenced in theServiceorServiceNameannotation.- Overrides:
resolveServiceClassin classServiceLayerDecorator- 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:ServiceLayerReturn a string used to represent the given type in the wire protocol.- Overrides:
resolveTypeTokenin classServiceLayerDecorator- Parameters:
clazz- a client-side EntityProxy or ValueProxy type- Returns:
- the type token used to represent the proxy type
-
-