Class AbstractCollectionProxy<E>

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Iterable<E>, java.util.Collection<E>, javassist.util.proxy.Proxy, FormProxyObject
    Direct Known Subclasses:
    ListProxy, SetProxy

    public abstract class AbstractCollectionProxy<E>
    extends java.lang.Object
    implements java.util.Collection<E>, javassist.util.proxy.Proxy, FormProxyObject, java.io.Serializable
    This class provides a skeletal implementation of the Collection
    Since:
    8.0.0
    Author:
    jumperchen
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      AbstractCollectionProxy​(java.util.Collection<E> origin, java.lang.annotation.Annotation[] callerAnnots)  
    • Field Detail

      • _dirty

        protected boolean _dirty
      • isImmutableElements

        protected boolean isImmutableElements
    • Constructor Detail

      • AbstractCollectionProxy

        public AbstractCollectionProxy​(java.util.Collection<E> origin,
                                       java.lang.annotation.Annotation[] callerAnnots)
    • Method Detail

      • initCache

        protected abstract java.util.Collection<E> initCache()
      • getCache

        protected <T extends java.util.Collection<E>> T getCache()
      • replaceOrigin

        protected java.lang.Object replaceOrigin​(java.lang.Object origin)
      • onDirtyChange

        public void onDirtyChange()
      • onDataChange

        public void onDataChange​(java.lang.Object o)
      • setDirty

        protected void setDirty​(boolean d)
      • setHandler

        public void setHandler​(javassist.util.proxy.MethodHandler mi)
        Specified by:
        setHandler in interface javassist.util.proxy.Proxy
      • size

        public int size()
        Specified by:
        size in interface java.util.Collection<E>
      • isEmpty

        public boolean isEmpty()
        Specified by:
        isEmpty in interface java.util.Collection<E>
      • contains

        public boolean contains​(java.lang.Object o)
        Specified by:
        contains in interface java.util.Collection<E>
      • clear

        public void clear()
        Specified by:
        clear in interface java.util.Collection<E>
      • iterator

        public java.util.Iterator<E> iterator()
        Specified by:
        iterator in interface java.util.Collection<E>
        Specified by:
        iterator in interface java.lang.Iterable<E>
      • toArray

        public java.lang.Object[] toArray()
        Specified by:
        toArray in interface java.util.Collection<E>
      • toArray

        public <T> T[] toArray​(T[] a)
        Specified by:
        toArray in interface java.util.Collection<E>
      • add

        public boolean add​(E e)
        Specified by:
        add in interface java.util.Collection<E>
      • remove

        public boolean remove​(java.lang.Object o)
        Specified by:
        remove in interface java.util.Collection<E>
      • addAll

        public boolean addAll​(java.util.Collection<? extends E> c)
        Specified by:
        addAll in interface java.util.Collection<E>
      • containsAll

        public boolean containsAll​(java.util.Collection<?> c)
        Specified by:
        containsAll in interface java.util.Collection<E>
      • removeAll

        public boolean removeAll​(java.util.Collection<?> c)
        Specified by:
        removeAll in interface java.util.Collection<E>
      • isFormDirty

        public boolean isFormDirty()
        Description copied from interface: FormProxyObject
        Returns whether the form proxy object is dirty or not, including all of its attributes.
        Specified by:
        isFormDirty in interface FormProxyObject
      • retainAll

        public boolean retainAll​(java.util.Collection<?> c)
        Specified by:
        retainAll in interface java.util.Collection<E>
      • resetFromOrigin

        public void resetFromOrigin()
        Description copied from interface: FormProxyObject
        Resets all of the changes of this form from the origin object.
        Specified by:
        resetFromOrigin in interface FormProxyObject
      • testEquals

        protected static boolean testEquals​(java.lang.Object e,
                                            java.lang.Object o)
      • setFormOwner

        public void setFormOwner​(java.lang.Object owner,
                                 FormBinding binding)
        Description copied from interface: FormProxyObject
        Sets the owner of this form with its binding.
        Specified by:
        setFormOwner in interface FormProxyObject
        Parameters:
        owner - the object associated with this form.
      • createProxyObject

        protected <T> T createProxyObject​(T t)
      • cacheSavePropertyBinding

        public void cacheSavePropertyBinding​(java.lang.String property,
                                             SavePropertyBinding s)
        Description copied from interface: FormProxyObject
        Cache save property binding by property string
        Specified by:
        cacheSavePropertyBinding in interface FormProxyObject
        Parameters:
        property - the property of save property binding
        s - the save property binding
      • setPath

        public void setPath​(java.lang.String property,
                            ProxyNode parent)
        Description copied from interface: FormProxyObject
        Set the property of current form proxy object and it's creator
        Specified by:
        setPath in interface FormProxyObject
        Parameters:
        property - p the property
        parent - parent the parent proxy node