@Override
        public boolean equals(Object obj)
        {
            if (this == obj)
                return true;
            if (obj == null)
                return false;
            if (getClass() != obj.getClass())
                return false;
            Inner other = (Inner) obj;
            if (prop1a != other.prop1a)
                return false;
            if (prop1and2a != other.prop1and2a)
                return false;
            if (prop1and2b != other.prop1and2b)
                return false;
            if (prop1and3a != other.prop1and3a)
                return false;
            if (prop1and3b != other.prop1and3b)
                return false;
            if (prop1b != other.prop1b)
                return false;
            if (prop2a != other.prop2a)
                return false;
            if (prop2and3a != other.prop2and3a)
                return false;
            if (prop2and3b != other.prop2and3b)
                return false;
            if (prop2b != other.prop2b)
                return false;
            if (prop3a != other.prop3a)
                return false;
            if (prop3b != other.prop3b)
                return false;
            if (propAll != other.propAll)
                return false;
            return true;
        }
The fields are filtered dependending on the Tag annotation {@link Tag#groupFilter()}.

@author David Yu
@created Feb 11, 2013
protostuff-runtime/src/test/java/io/protostuff/runtime/FilterFieldsByGroupTest.java