This class describes the serialization of the parameters, result and also specifies how the method will be called.
The Builder should be used for construction, or the constructor
MethodTransferProperties(
public static final class | Builder class for custom construction of method properties. |
public | MethodTransferProperties( Creates an instance by examining the provided annotations on the given method. |
public static Builder | Creates a new builder instance for this class. |
public static RMIObjectWriteHandler | createWriteHandlerForMethod( Creates a return value write handler for the given method. |
public Constructor< | Returns the constructor of the exception which should be used to rethrown RMI errors. |
public Method | Returns non- null if the RMI method calls should be redirected to a specified method. |
public Class< | Gets the return type of the method. |
public RMIObjectWriteHandler | Gets the write handler for the return value of the method. |
public boolean | Returns if the method result should be cached for future calls. |
public boolean | Returns if the default method should be called in case of RMI failure. |
public boolean | Returns if the method is not allowed to be called through RMI. |
public boolean | propertiesEquals( Checks if the properties defined by this instance equals to the ones specified by the parameter. |
The annotations of the given method is examined and a configuration is parsed for use.
See the possible method and parameter annotations for more information. (package
saker.rmi.annot.invoke
and package saker.rmi.annot.transfer
)
The annotations on the method is parsed and the write handler is determined.
null
if an exception rethrow type was specified.null
if the RMI method calls should be redirected to a specified method.null
.The returned writer will be used when the method is invoked by a remote client.
true
if the result should be cached.true
if the default method should be called.
When designing security sensitive applications, if this method returns true
on the server side, it
doesn't protect against remote calls issued by the client. I.e. The forbidden method may still be called by a
malicious client.
true
if the method may not be called.Equality is not checked for the enclosed executable. Two properties can equal regardless off the executable they are defined for.
true
if the two properties equal.