net.israfil.foundation.core
Class DynamicUtil

java.lang.Object
  extended by net.israfil.foundation.core.DynamicUtil

public final class DynamicUtil
extends java.lang.Object

Utilities used for the implementation of Dynamic and related interfaces.

Author:
Christian Edward Gruber

Field Summary
protected static java.util.Map classes
           
 
Method Summary
protected static java.lang.reflect.Method _getMethodForSelector(java.lang.Class receiverClass, java.lang.String selector)
           
static void addSuperInterfaces(java.util.Set set, java.lang.Class c)
           
static java.lang.Object construct(java.lang.Class c, java.lang.Object[] parameters)
           
static java.util.Set getAllParentTypes(java.lang.Class c)
           
static java.lang.Class getBoxedTypeEquivalent(java.lang.Class c)
           
static java.lang.reflect.Field getField(java.lang.Object receiver, java.lang.String attributeName)
          Conveniently get a field from an object, automatically trapping exceptions and returning the Field or null if no such field exists.
static java.lang.reflect.Method getMethodForSelector(java.lang.Class receiverClass, java.lang.String selector)
           
static java.lang.reflect.Method getMethodForSelector(java.lang.Object receiver, java.lang.String selector)
           
static java.lang.Class getPrimitiveTypeEquivalent(java.lang.Class c)
           
static boolean hasBoxedTypeEquivalent(java.lang.Class c)
           
static boolean hasPrimitiveTypeEquivalent(java.lang.Class c)
           
static java.lang.Object performOn(java.lang.Object receiver, java.lang.String selector, java.lang.Object[] parameters)
           
static boolean respondsTo(java.lang.Object receiver, java.lang.String selector)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

classes

protected static final java.util.Map classes
Method Detail

hasPrimitiveTypeEquivalent

public static boolean hasPrimitiveTypeEquivalent(java.lang.Class c)

getPrimitiveTypeEquivalent

public static java.lang.Class getPrimitiveTypeEquivalent(java.lang.Class c)

hasBoxedTypeEquivalent

public static boolean hasBoxedTypeEquivalent(java.lang.Class c)

getBoxedTypeEquivalent

public static java.lang.Class getBoxedTypeEquivalent(java.lang.Class c)

getAllParentTypes

public static java.util.Set getAllParentTypes(java.lang.Class c)

addSuperInterfaces

public static void addSuperInterfaces(java.util.Set set,
                                      java.lang.Class c)

getField

public static java.lang.reflect.Field getField(java.lang.Object receiver,
                                               java.lang.String attributeName)
Conveniently get a field from an object, automatically trapping exceptions and returning the Field or null if no such field exists.


respondsTo

public static boolean respondsTo(java.lang.Object receiver,
                                 java.lang.String selector)
See Also:
org.israfil.maveric.Dynamic#respondsTo(java.lang.String)

getMethodForSelector

public static java.lang.reflect.Method getMethodForSelector(java.lang.Object receiver,
                                                            java.lang.String selector)

getMethodForSelector

public static java.lang.reflect.Method getMethodForSelector(java.lang.Class receiverClass,
                                                            java.lang.String selector)

_getMethodForSelector

protected static java.lang.reflect.Method _getMethodForSelector(java.lang.Class receiverClass,
                                                                java.lang.String selector)
                                                         throws java.lang.ClassNotFoundException,
                                                                java.lang.NoSuchMethodException
Throws:
java.lang.ClassNotFoundException
java.lang.NoSuchMethodException

performOn

public static java.lang.Object performOn(java.lang.Object receiver,
                                         java.lang.String selector,
                                         java.lang.Object[] parameters)
See Also:
org.israfil.maveric.Dynamic#perform(java.lang.String, java.lang.Object[])

construct

public static java.lang.Object construct(java.lang.Class c,
                                         java.lang.Object[] parameters)


Copyright © 2003-2006. All Rights Reserved.