Class ProxyUtil

java.lang.Object
org.apache.struts2.util.ProxyUtil

public class ProxyUtil extends Object
ProxyUtil

Various utility methods dealing with proxies

  • Constructor Details

    • ProxyUtil

      public ProxyUtil()
  • Method Details

    • ultimateTargetClass

      public static Class<?> ultimateTargetClass(Object candidate)
      Determine the ultimate target class of the given instance, traversing not only a top-level proxy but any number of nested proxies as well — as long as possible without side effects.
      Parameters:
      candidate - the instance to check (might be a proxy)
      Returns:
      the ultimate target class (or the plain class of the given object as fallback; never null)
    • isProxy

      public static boolean isProxy(Object object)
      Check whether the given object is a proxy.
      Parameters:
      object - the object to check
    • isProxyMember

      public static boolean isProxyMember(Member member, Object object)
      Check whether the given member is a proxy member of a proxy object or is a static proxy member.
      Parameters:
      member - the member to check
      object - the object to check
    • isHibernateProxy

      public static boolean isHibernateProxy(Object object)
      Check whether the given object is a Hibernate proxy.
      Parameters:
      object - the object to check
    • isHibernateProxyMember

      public static boolean isHibernateProxyMember(Member member)
      Check whether the given member is a member of a Hibernate proxy.
      Parameters:
      member - the member to check
    • getHibernateProxyTarget

      public static Object getHibernateProxyTarget(Object object)
      Returns:
      the target instance of the given object if it is a Hibernate proxy object, otherwise the given object
    • resolveTargetMember

      public static Member resolveTargetMember(Member proxyMember, Object target)
      Returns:
      matching member on target object if one exists, otherwise the same member