|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectome.services.blitz.util.IceMethodInvoker
public class IceMethodInvoker
Method
-cache primed either with an ServiceInterface
instance
or with a Class
with generic type ServiceInterface
. Actual
invocation happens via
invoke(Object, Ice.Current, IceMapper, Object[])
No reference is held to the initial priming argument in
IceMethodInvoker(ServiceInterface, OmeroContext)
just the class.
MAPPING RULES:
Constructor Summary | |
---|---|
IceMethodInvoker(Class<S> k,
OmeroContext context)
Creates an IceMethodInvoker instance by using reflection on the
Class argument. |
|
IceMethodInvoker(ServiceInterface srv,
OmeroContext context)
Create an IceMethodInvoker instance using the Class of
the passed argument to call
IceMethodInvoker#IceMethodInvoker(Class) . |
Method Summary | |
---|---|
Method |
getMethod(String name)
For testing the cached method. |
Object |
invoke(Object obj,
Ice.Current current,
IceMapper mapper,
Object... args)
Calls the method named in Current.operation with the
arguments provided mapped via the IceMapper instance. |
boolean |
isVoid(Ice.Current current)
Checks for a void return type, which is needed to know what type of ice_response() method to invoke. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public IceMethodInvoker(ServiceInterface srv, OmeroContext context)
IceMethodInvoker
instance using the Class
of
the passed argument to call
IceMethodInvoker#IceMethodInvoker(Class)
.
srv
- A Non-null ServiceInterface
instance.context
- The active OmeroContext
instance.public IceMethodInvoker(Class<S> k, OmeroContext context)
IceMethodInvoker
instance by using reflection on the
Class
argument. All information is cached internally in a static
map
if the given service class argument has not
already been cached.
S
- A type which subclasses ServiceInterface
c
- A non-null ServiceInterface
Class
Method Detail |
---|
public boolean isVoid(Ice.Current current)
public Object invoke(Object obj, Ice.Current current, IceMapper mapper, Object... args) throws Ice.UserException
Current.operation
with the
arguments provided mapped via the IceMapper
instance. The return
value or any method which is thrown is equally mapped and returned.
Clients of this method must check the return value for exceptions.
ServantHelper#throwIfNecessary(Object)
does just this, but is
also called internally by ServantHelper#checkVoid(Object)
and
ServantHelper#returnValue(Class, Object)
.
obj
- Instance for the call to
Method.invoke(Object, Object[])
. Can be null if this
is a static call.current
- The current Ice operation. Non-null.mapper
- A non-null mapper.args
- The proper number of arguments for the method specified in
current.
Ice.UserException
public Method getMethod(String name)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Version: Beta4.2.1-r8614-Beta4.2-b41
Copyright © 2009 The University of Dundee. All Rights Reserved.