3789983e89
Reviewed-by: darcy, ihse
31 lines
1.1 KiB
Java
31 lines
1.1 KiB
Java
import java.io.Serializable;
|
|
import java.lang.reflect.InvocationHandler;
|
|
import java.lang.reflect.Method;
|
|
import java.lang.reflect.Proxy;
|
|
import java.util.ArrayList;
|
|
|
|
public class TransferableList extends ArrayList {
|
|
private static class NullInvocationHandler implements InvocationHandler, Serializable {
|
|
public Object invoke(Object proxy, Method method, Object[] args)
|
|
throws Throwable {
|
|
throw new Error("UNIMPLEMENTED");
|
|
}
|
|
}
|
|
|
|
public TransferableList() {
|
|
try {
|
|
InvocationHandler handler = new NullInvocationHandler();
|
|
Class<?> proxyClass = Proxy.getProxyClass(
|
|
ListInterface.class.getClassLoader(),
|
|
new Class[] { ListInterface.class, AnotherInterface.class });
|
|
AnotherInterface obj = (AnotherInterface) proxyClass.
|
|
getConstructor(new Class[]{InvocationHandler.class}).
|
|
newInstance(handler);
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
}
|
|
|
|
interface ListInterface extends Serializable {}
|