Class SharedObjectMsg

    • Field Detail

      • nullArgs

        public static final Object[] nullArgs
      • nullTypes

        public static final Class[] nullTypes
      • clazz

        protected String clazz
      • method

        protected String method
      • parameters

        protected Object[] parameters
    • Constructor Detail

      • SharedObjectMsg

        protected SharedObjectMsg()
      • SharedObjectMsg

        protected SharedObjectMsg​(String className,
                                  String methodName,
                                  Object[] parameters)
    • Method Detail

      • getClass

        public static Class getClass​(ClassLoader loader,
                                     String name)
                              throws ClassNotFoundException
        Utility for getting a Class instance from a String class name. Calls Class.forName().
        Parameters:
        loader - the ClassLoader to use to load the given class
        name - of Class to load
        Returns:
        Class instance found. If not found, a ClassNotFoundException is thrown
        Throws:
        ClassNotFoundException - thrown if specified class is not found
      • getNameForClass

        public static String getNameForClass​(Class clazz)
        Get name for given class.
        Parameters:
        clazz - the Class to retrieve the name from
        Returns:
        String name of given class
      • getTypesForParameters

        public static Class[] getTypesForParameters​(Object[] args)
        Get array of argument types from array of objects
        Parameters:
        args - the arguments to get types for
        Returns:
        Class[] of types for objects in given Object array
      • findMethod

        public static Method findMethod​(Class clazz,
                                        String meth,
                                        Class[] args)
        Find a Method instance on given class. This method searches for a method on the given class (first parameter), of the given name (second parameter), with arity defined by the third parameter. Calls searchForMethod to actually do the searching.
        Parameters:
        clazz - the Class to look on
        meth - the method name to look for
        args - the arguments that will be passed to the method on the invoke call
        Returns:
        Method instance found on given class. Null if none found.
      • findMethodRecursive

        public static Method findMethodRecursive​(Class clazz,
                                                 String meth,
                                                 Class[] args)
        Find a Method instance on given class, and recursively search the class' superclass tree for given method.
        Parameters:
        clazz - the Class to look upon
        meth - the String name of the method to look for
        args - the array of Object arguments that will be passed to the method for execution
        Returns:
        Method instance if found, null if not found
      • checkForSerializable

        public static void checkForSerializable​(SharedObjectMsg aMsg)
                                         throws NotSerializableException
        Check a given msg to verify that all Objects in args array implement the Serializable interface.
        Parameters:
        aMsg - the Message to check
        Throws:
        NotSerializableException - thrown if any objects in args array do not implement java.io.Serializable
      • getMethod

        public final String getMethod()
      • setMethod

        public final void setMethod​(String name)
      • checkAlterMsg

        protected void checkAlterMsg()
        Check if it is permitted to alter the state of this message (args, class name, method name). Default: NOP; subclasses should override as appropriate. To disallow, throw a java.lang.RuntimeException.
      • getClassName

        public final String getClassName()
      • setClassName

        public final void setClassName​(String name)
      • getParameters

        public Object[] getParameters()
      • setParameters

        public final void setParameters​(Object[] args)
      • getParameterTypes

        protected Class[] getParameterTypes()
      • findMethod

        protected final Method findMethod​(Class clazz1)
      • findMethodRecursive

        protected final Method findMethodRecursive​(Class clazz1)