@Override
        public boolean equals(final Object o) {
            if (this == o) return true;
            if (o == null || getClass() != o.getClass()) return false;
            final Key key = (Key) o;
            return omitAuditFields == key.omitAuditFields &&
                    Objects.equals(clazz, key.clazz);
        }
Given a class return all the property names.
stroom-legacy/stroom-legacy-impex_6_1/src/main/java/stroom/legacy/impex_6_1/BeanPropertyUtil.java