public class RemoteInvocationHandler extends Object implements InvocationHandler, Serializable
Decora um InvocationHandler, repassando remotamente a ele, as
chamadas ao método invoke(Object, Method, Object[]).
IMPORTANTE:
A documentação do método
InvocationHandler.invoke(Object, Method, Object[]) diz que o proxy no
qual a chamada foi executada, será passado como primeiro argumento.
Entretanto, para evitar a constante serialização do proxy, será passado o
objeto para o qual o proxy foi criado para o InvocationHandler
responssável pela execução dos métodos. Não consideramos isso um problema,
pois a função do parâmetro proxy é apenas a de diferenciar onde a chamada
foi executada, já que um mesmo InvocationHandler pode ser utilizado
em vários proxies e um proxy pode ser criado apenas com interfaces.
| Constructor and Description |
|---|
RemoteInvocationHandler(Object obj,
InvocationHandler handler)
Construtor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
export(int port)
Torna esse objeto disponível para receber chamadas RMI, usando a porta
fornecida.
|
Object |
invoke(Object proxy,
Method method,
Object[] args) |
void |
unexport()
Faz com que esse objeto não possa mais aceitar chamadas RMI.
|
public RemoteInvocationHandler(Object obj, InvocationHandler handler)
obj - Objeto para o qual está se criando este handler.handler - Responsável por tratar as chamadas aos métodos do objeto,
obj.public Object invoke(Object proxy, Method method, Object[] args) throws Throwable
invoke in interface InvocationHandlerThrowablepublic void unexport()
throws NoSuchObjectException
NoSuchObjectException - Se esse objeto não estiver exportado.public void export(int port)
throws RemoteException
port - Porta no qual o objeto será exportado.RemoteException - Em caso de falha da exportação.Copyright © 2020. All rights reserved.