Package org.zkoss.bind.proxy

## Class BeanProxyHandler<T>

- java.lang.Object
- - org.zkoss.bind.proxy.BeanProxyHandler<T>

- All Implemented Interfaces:
    `java.io.Serializable`, `javassist.util.proxy.MethodHandler`
  Direct Known Subclasses:
    `FormProxyHandler`

      public class BeanProxyHandler<T>
      extends java.lang.Object
      implements javassist.util.proxy.MethodHandler, java.io.Serializable

  A bean proxy handler
  Since:
    8.0.0
  Author:
    jumperchen
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected java.util.Map<java.lang.String,​java.lang.Object>` | `_cache` |
    `protected java.util.Set<java.lang.String>` | `_dirtyFieldNames` |
    `protected ProxyNode` | `_node` |
    `protected T` | `_origin` |
    `protected static javassist.util.proxy.MethodFilter` | `BEAN_METHOD_FILTER` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `BeanProxyHandler​(T origin)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.Object` | `invoke​(java.lang.Object self, java.lang.reflect.Method method, java.lang.reflect.Method proceed, java.lang.Object[] args)` |
    `protected static boolean` | `isSetMethodHandled​(java.lang.reflect.Method m)` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### BEAN_METHOD_FILTER

          protected static javassist.util.proxy.MethodFilter BEAN_METHOD_FILTER

    - #### _origin

          protected T _origin

    - #### _cache

          protected java.util.Map<java.lang.String,​java.lang.Object> _cache

    - #### _dirtyFieldNames

          protected java.util.Set<java.lang.String> _dirtyFieldNames

    - #### _node

          protected ProxyNode _node

  - ### Constructor Detail

    - #### BeanProxyHandler

          public BeanProxyHandler​(T origin)

  - ### Method Detail

    - #### isSetMethodHandled

          protected static boolean isSetMethodHandled​(java.lang.reflect.Method m)

    - #### invoke

          public java.lang.Object invoke​(java.lang.Object self,
                                         java.lang.reflect.Method method,
                                         java.lang.reflect.Method proceed,
                                         java.lang.Object[] args)
                                  throws java.lang.Exception

      Specified by:
        `invoke` in interface `javassist.util.proxy.MethodHandler`
      Throws:
        `java.lang.Exception`