public class ConstrainableProxyUtil extends Object
| Modifier and Type | Method and Description |
|---|---|
static boolean |
equivalentConstraints(MethodConstraints methodConstraints1,
MethodConstraints methodConstraints2,
Method[] mappings)
Test to see if two
MethodConstraints instances are equivalent given a
method-to-method mapping. |
static MethodConstraints |
translateConstraints(MethodConstraints methodConstraints,
Method[] mappings)
Creates a
MethodConstraints using the constraints in methodConstraints,
but with the methods remapped according to mappings, where the first element of
each pair of elements is mapped to the second. |
static void |
verifyConsistentConstraints(MethodConstraints methodConstraints,
Object proxy,
Method[] mappings)
Verify that an object,
proxy, is an instance of RemoteMethodControl its
MethodConstraints are equivalent to another MethodConstraints instance,
methodConstraints once a mapping has been applied. |
public static MethodConstraints translateConstraints(MethodConstraints methodConstraints, Method[] mappings)
MethodConstraints using the constraints in methodConstraints,
but with the methods remapped according to mappings, where the first element of
each pair of elements is mapped to the second. For example, if
methodConstraints returns constraints C1 for method
M1, and the elements of mappings are methods M1 and
M2, then the resulting method constraints return C1 for method
M2.methodConstraints - the method constraints whose methods should be translated, or
null for empty constraintsmappings - the method mappingsNullPointerException - if mappings is null or contains
null elementsIllegalArgumentException - if mappings contains an odd number of elementspublic static boolean equivalentConstraints(MethodConstraints methodConstraints1, MethodConstraints methodConstraints2, Method[] mappings)
MethodConstraints instances are equivalent given a
method-to-method mapping. Only the constraints for methods that appear in the mapping are
compared. The mapping is represented by an array, mappings, of 2n Method objects. For all values p less than n the constraints associated with
mappings[2p] in methodConstraints1 are compared to the constraints
associated with mappings[2p+1] in methodConstraints2. If null is
passed in for both instances they are considered equivalent.methodConstraints1 - the first MethodConstraints object to compare.methodConstraints2 - the second MethodConstraints object to compare.mappings - the method-to-method mapping.true if the MethodConstraints instances represent
equivalent constraints, returns false otherwise.NullPointerException - if mapping is null contains
null elements.IllegalArgumentException - if mapping contains an odd number of elementspublic static void verifyConsistentConstraints(MethodConstraints methodConstraints, Object proxy, Method[] mappings) throws InvalidObjectException
proxy, is an instance of RemoteMethodControl its
MethodConstraints are equivalent to another MethodConstraints instance,
methodConstraints once a mapping has been applied. If proxy does
not implement RemoteMethodControl or the associated constraints are not
equivalent throw an InvalidObjectException. The mapping is represented by an array,
mappings, of 2n Method objects. For all values p less than n the
constraints associated with mappings[2p] in methodConstraints are
compared to the constraints associated with mappings[2p+1] in the
MethodConstraints returned by proxy.getConstraints. Will also
return normally if both methodConstraints and the value returned by
proxy.getConstraints are null.methodConstraints - the method constraints proxy should have.proxy - the proxy to test, must implement RemoteMethodControl.mappings - the method to method mappingNullPointerException - if mappings or proxy is
null or if mapping contains
null elementsIllegalArgumentException - if mappings contains an odd number of elementsInvalidObjectException - if proxy does not implement RemoteMethodControl,
or if the constraints on proxy are not
equivalent to methodConstraints.Copyright © GigaSpaces.