Package org.openxava.util
Class XObjects
- java.lang.Object
-
- org.openxava.util.XObjects
-
public class XObjects extends java.lang.ObjectUtility class to work with objects.- Since:
- 4.4, until 4.3 it was named Objects.
-
-
Constructor Summary
Constructors Constructor Description XObjects()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.Objectclone(java.lang.Object o)Clone the sent object.static java.lang.ObjectdeepClone(java.lang.Object source)Does an deep clone of the sent object.static java.lang.Objectexecute(java.lang.Class theClass, java.lang.String methodName)Allows to execute dinamically (as in SmallTalk) an static method of an class.static java.lang.Objectexecute(java.lang.Class theClass, java.lang.String methodName, java.lang.Class argumentClass, java.lang.Object arg)Allows to execute dinamically (as in SmallTalk) an static method of an class.static java.lang.Objectexecute(java.lang.Class theClass, java.lang.String methodName, java.lang.Class argumentClass1, java.lang.Object arg1, java.lang.Class argumentClass2, java.lang.Object arg2)Allows to execute dinamically (as in SmallTalk) an static method of an class.static java.lang.Objectexecute(java.lang.Object o, java.lang.String methodName)Allows to execute dinamically (as in SmallTalk) an method of an object.static java.lang.Objectexecute(java.lang.Object o, java.lang.String methodName, java.lang.Class argumentClass, java.lang.Object arg)Allows to execute dinamically (as in SmallTalk) an method of an object.static java.lang.Objectexecute(java.lang.Object o, java.lang.String methodName, java.lang.Class argumentClass1, java.lang.Object arg1, java.lang.Class argumentClass2, java.lang.Object arg2)Allows to execute dinamically (as in SmallTalk) an method of an object.static java.lang.Objectexecute(java.lang.Object o, java.lang.String methodName, java.lang.Class argumentClass1, java.lang.Object arg1, java.lang.Class argumentClass2, java.lang.Object arg2, java.lang.Class argumentClass3, java.lang.Object arg3)Allows to execute dinamically (as in SmallTalk) an method of an object.static java.lang.ObjecttryClone(java.lang.Object o)Try to clone the sent object.
-
-
-
Method Detail
-
clone
public static java.lang.Object clone(java.lang.Object o) throws java.lang.CloneNotSupportedExceptionClone the sent object.The clone is done using the method
clone()of the sent object if this implementsCloneable- Throws:
java.lang.CloneNotSupportedException- If the object is not Cloneable.
-
deepClone
public static java.lang.Object deepClone(java.lang.Object source) throws CloneExceptionDoes an deep clone of the sent object.If the argument is null, then returns null.
- Parameters:
source- Must be serializable. It's not necessary that it implementsCloneable.- Returns:
- Clone of the sent object. Does an clon of all levels, complete, deep.
- Throws:
CloneException- Any problem on cloning.
-
execute
public static java.lang.Object execute(java.lang.Object o, java.lang.String methodName) throws java.lang.ExceptionAllows to execute dinamically (as in SmallTalk) an method of an object.- Parameters:
o- Object where the method will be executed. It cannot be null.methodName- Name of the method to execute.- Returns:
- Result of method execution.
- Throws:
java.lang.Exception- Any problem, including exceptions from target method.java.lang.NoSuchMethodException- If the method does not exist in target object.
-
execute
public static java.lang.Object execute(java.lang.Object o, java.lang.String methodName, java.lang.Class argumentClass, java.lang.Object arg) throws java.lang.ExceptionAllows to execute dinamically (as in SmallTalk) an method of an object.- Parameters:
o- Object where the method will be executed. It cannot be null.methodName- Name of the method to execute.argumentClass- Not null.arg- Argument value. It can be null.- Returns:
- Result of method execution.
- Throws:
java.lang.Exception- Any problem, including exceptions from target method.java.lang.NoSuchMethodException- If the method does not exist in target object.
-
execute
public static java.lang.Object execute(java.lang.Object o, java.lang.String methodName, java.lang.Class argumentClass1, java.lang.Object arg1, java.lang.Class argumentClass2, java.lang.Object arg2) throws java.lang.ExceptionAllows to execute dinamically (as in SmallTalk) an method of an object.- Parameters:
o- Object where the method will be executed. It cannot be null.methodName- Name of the method to execute.argumentClass1- Not null.arg1- Argument value. It can be null.argumentClass2- Not null.arg2- Argument value. It can be null.- Returns:
- Result of method execution.
- Throws:
java.lang.Exception- Any problem, including exceptions from target method.java.lang.NoSuchMethodException- If the method does not exist in target object.
-
execute
public static java.lang.Object execute(java.lang.Object o, java.lang.String methodName, java.lang.Class argumentClass1, java.lang.Object arg1, java.lang.Class argumentClass2, java.lang.Object arg2, java.lang.Class argumentClass3, java.lang.Object arg3) throws java.lang.ExceptionAllows to execute dinamically (as in SmallTalk) an method of an object.- Parameters:
o- Object where the method will be executed. It cannot be null.methodName- Name of the method to execute.argumentClass1- Not null.arg1- Argument value. It can be null.argumentClass2- Not null.arg2- Argument value. It can be null.argumentClass3- Not null.arg3- Argument value. It can be null.- Returns:
- Result of method execution.
- Throws:
java.lang.Exception- Any problem, including exceptions from target method.java.lang.NoSuchMethodException- If the method does not exist in target object.
-
execute
public static java.lang.Object execute(java.lang.Class theClass, java.lang.String methodName, java.lang.Class argumentClass1, java.lang.Object arg1, java.lang.Class argumentClass2, java.lang.Object arg2) throws java.lang.ExceptionAllows to execute dinamically (as in SmallTalk) an static method of an class.- Parameters:
theClass- The class where the method will be executed. It cannot be null.methodName- Name of the method to execute.argumentClass1- Not null.arg1- Argument value. It can be null.argumentClass2- Not null.arg2- Argument value. It can be null.- Returns:
- Result of method execution.
- Throws:
java.lang.Exception- Any problem, including exceptions from target method.java.lang.NoSuchMethodException- If the method does not exist in target class.
-
execute
public static java.lang.Object execute(java.lang.Class theClass, java.lang.String methodName, java.lang.Class argumentClass, java.lang.Object arg) throws java.lang.ExceptionAllows to execute dinamically (as in SmallTalk) an static method of an class.- Parameters:
theClass- The class where the method will be executed. It cannot be null.methodName- Name of the method to execute.argumentClass- Not null.arg- Argument value. It can be null.- Returns:
- Result of method execution.
- Throws:
java.lang.Exception- Any problem, including exceptions from target method.java.lang.NoSuchMethodException- If the method does not exist in target class.
-
execute
public static java.lang.Object execute(java.lang.Class theClass, java.lang.String methodName) throws java.lang.ExceptionAllows to execute dinamically (as in SmallTalk) an static method of an class.- Parameters:
theClass- The class where the method will be executed. It cannot be null.methodName- Name of the method to execute.- Returns:
- Result of method execution.
- Throws:
java.lang.Exception- Any problem, including exceptions from target method.java.lang.NoSuchMethodException- If the method does not exist in target class.
-
tryClone
public static java.lang.Object tryClone(java.lang.Object o)
Try to clone the sent object.If it does not win it, then return the original element.
The clone is done using the methodclone()of the sent object, if it implementsCloneable.
-
-