public class ProxyUtils extends Object
| Constructor and Description |
|---|
ProxyUtils() |
| Modifier and Type | Method and Description |
|---|---|
static InvocationHandler |
createInvocationHandler(Object obj)
Caso a classe tenha sido anotada com
InvocationHandlers, será criado o
InvocationHandler indicado no valor da anotação, sendo passado o
objeto como parâmetro do construtor. |
static <T> T |
newProxyInstance(Object obj,
InvocationHandler handler)
Cria um proxy que repassa todas as chamadas aos métodos de um objeto, obj,
para o
handler. |
static <T> T |
newRemoteProxyInstance(Object obj,
InvocationHandler handler,
int port)
Cria e exporta um proxy remoto que implementa todas as interfaces remotas
do objeto, obj.
|
static void |
unexportRemoteProxy(Object proxy)
Remove o proxy remoto, proxy, da execução do RMI.
O proxy já não poderá mais aceitar chamadas RMI. |
public static <T> T newProxyInstance(Object obj, InvocationHandler handler)
handler. O proxy irá implementar todas as
interfaces implementadas pelo objeto, obj.T - tipo do proxy.obj - Objeto que será substituído pelo proxy.handler - Responsável por tratar as chamadas aos métodos do objeto.public static <T> T newRemoteProxyInstance(Object obj, InvocationHandler handler, int port) throws RemoteException
T - tipo do proxy.obj - Objeto que será substituído pelo proxy. Serializable ou estender
UnicastRemoteObject. Precisa apenas implementar alguma
interface que estenda Remote.handler - Responsável por tratar as chamadas aos métodos do objeto.port - Porta na qual o proxy será exportado.RemoteException - em casos de falha de comunicação com servidor.public static void unexportRemoteProxy(Object proxy) throws NoSuchObjectException
proxy - Proxy que não poderá mais receber chamadas RMI.NoSuchObjectException - Se o objeto remoto não estiver exportado.public static InvocationHandler createInvocationHandler(Object obj) throws InstantiationException, IllegalAccessException, SecurityException, NoSuchMethodException, IllegalArgumentException, InvocationTargetException
InvocationHandlers, será criado o
InvocationHandler indicado no valor da anotação, sendo passado o
objeto como parâmetro do construtor. Caso contrário, será retornado um
Invoker que irá invocar os métodos do objeto fazendo
method.invoke(obj, args);.obj - Objeto para o qual será criado o InvocationHandler.InvocationHandler para tratar as chamadas aos métodos de
objetos de um determinado tipo.InstantiationException - caso não tenha sido possível instanciar o
InvocationHandler definido na anotação.IllegalAccessException - caso não se tenha acesos ao construtor
padrão do InvocationHandler definido na anotação.NoSuchMethodException - caso o InvocationHandler não tenha um
construtor que receba um objeto como parâmetro.SecurityException - caso ocorra um erro de segurança ao tentar
executar o construtor do InvocationHandler.InvocationTargetException - caso ocorra um erro ao invocar o
construtor do InvocationHandler passando o objeto como
argumento.IllegalArgumentException - caso ocorra um erro ao invocar o
construtor do InvocationHandler passando o objeto como
argumento.InvocationHandlersCopyright © 2016. All rights reserved.