public static Map<String, FieldAccess> getAllAccessorFields( Class<? extends Object> theClass ) { return getAllAccessorFields( theClass, true ); }
public static Map<String, FieldAccess> getAllAccessorFields( Class<? extends Object> theClass ) { return getAllAccessorFields( theClass, true ); }
public static boolean hasField( Class<?> aClass, String name ) { Map<String, FieldAccess> fields = Reflection.getAllAccessorFields( aClass ); return fields.containsKey( name ); } }
public static boolean hasField( Class<?> aClass, String name ) { Map<String, FieldAccess> fields = Reflection.getAllAccessorFields( aClass ); return fields.containsKey( name ); } }
private static void fieldByFieldCopy( Object src, Object dst ) { final Class<?> srcClass = src.getClass(); Map<String, FieldAccess> srcFields = Reflection.getAllAccessorFields( srcClass ); final Class<?> dstClass = dst.getClass(); Map<String, FieldAccess> dstFields = Reflection.getAllAccessorFields ( dstClass ); for ( FieldAccess srcField : srcFields.values() ) { FieldAccess dstField = dstFields.get ( srcField.name() ); try { copySrcFieldToDestField ( src, dst, dstField, srcField, null ); }catch (Exception ex) { Exceptions.handle( Str.sputs("copying field", srcField.name(), srcClass, " to ", dstField.name(), dstClass), ex ); } } }
private static void fieldByFieldCopy( Object src, Object dst ) { final Class<?> srcClass = src.getClass(); Map<String, FieldAccess> srcFields = Reflection.getAllAccessorFields( srcClass ); final Class<?> dstClass = dst.getClass(); Map<String, FieldAccess> dstFields = Reflection.getAllAccessorFields ( dstClass ); for ( FieldAccess srcField : srcFields.values() ) { FieldAccess dstField = dstFields.get ( srcField.name() ); try { copySrcFieldToDestField ( src, dst, dstField, srcField, null ); }catch (Exception ex) { Exceptions.handle( Str.sputs("copying field", srcField.name(), srcClass, " to ", dstField.name(), dstClass), ex ); } } }
private final Map<String, FieldAccess> doGetFields ( Class<? extends Object> aClass ) { Map<String, FieldAccess> fieldAccessMap = Reflection.getAllAccessorFields ( aClass, true );
private final Map<String, FieldAccess> doGetFields ( Class<? extends Object> aClass ) { Map<String, FieldAccess> fieldAccessMap = Reflection.getAllAccessorFields ( aClass, true );
private static void fieldByFieldCopy( Object src, Object dst, Set<String> ignore ) { final Class<?> srcClass = src.getClass(); Map<String, FieldAccess> srcFields = Reflection.getAllAccessorFields( srcClass ); final Class<?> dstClass = dst.getClass(); Map<String, FieldAccess> dstFields = Reflection.getAllAccessorFields ( dstClass ); for ( FieldAccess srcField : srcFields.values() ) { if (ignore.contains ( srcField.name() )) { continue; } FieldAccess dstField = dstFields.get ( srcField.name() ); try { copySrcFieldToDestField ( src, dst, dstField, srcField, ignore ); }catch (Exception ex) { Exceptions.handle( Str.sputs("copying field", srcField.name(), srcClass, " to ", dstField.name(), dstClass), ex ); } } }
private static void fieldByFieldCopy( Object src, Object dst, Set<String> ignore ) { final Class<?> srcClass = src.getClass(); Map<String, FieldAccess> srcFields = Reflection.getAllAccessorFields( srcClass ); final Class<?> dstClass = dst.getClass(); Map<String, FieldAccess> dstFields = Reflection.getAllAccessorFields ( dstClass ); for ( FieldAccess srcField : srcFields.values() ) { if (ignore.contains ( srcField.name() )) { continue; } FieldAccess dstField = dstFields.get ( srcField.name() ); try { copySrcFieldToDestField ( src, dst, dstField, srcField, ignore ); }catch (Exception ex) { Exceptions.handle( Str.sputs("copying field", srcField.name(), srcClass, " to ", dstField.name(), dstClass), ex ); } } }
/** * This is one is forgiving of null paths. * This works with getters first, i.e., properties. * * @param object object * @param property property * @return value */ public static Object getProp( Object object, final String property ) { if ( object == null ) { return null; } if ( isDigits( property ) ) { /* We can index numbers and names. */ object = idx(object, StringScanner.parseInt(property)); } Class<?> cls = object.getClass(); /** Tries the getters first. */ Map<String, FieldAccess> fields = Reflection.getPropertyFieldAccessors( cls ); if ( !fields.containsKey( property ) ) { fields = Reflection.getAllAccessorFields( cls ); } if ( !fields.containsKey( property ) ) { return null; } else { return fields.get( property ).getValue(object); } }
/** * This is one is forgiving of null paths. * This works with getters first, i.e., properties. * * @param object object * @param property property * @return value */ public static Object getProp( Object object, final String property ) { if ( object == null ) { return null; } if ( isDigits( property ) ) { /* We can index numbers and names. */ object = idx(object, StringScanner.parseInt(property)); } Class<?> cls = object.getClass(); /** Tries the getters first. */ Map<String, FieldAccess> fields = Reflection.getPropertyFieldAccessors( cls ); if ( !fields.containsKey( property ) ) { fields = Reflection.getAllAccessorFields( cls ); } if ( !fields.containsKey( property ) ) { return null; } else { return fields.get( property ).getValue(object); } }
public static Map<String, FieldAccess> getPropertyFieldAccessMapPropertyFirst( Class<?> clazz ) { Map<String, FieldAccess> combinedFields = getCombinedFieldsPropertyFirst(clazz); if (combinedFields!=null) { return combinedFields; } else { /* Fallback map. */ Map<String, FieldAccess> fieldsFallbacks = null; /* Primary merge into this one. */ Map<String, FieldAccess> fieldsPrimary = null; /* Try to find the properties first if this is set. */ fieldsFallbacks = Reflection.getAllAccessorFields(clazz, true); fieldsPrimary = Reflection.getPropertyFieldAccessors(clazz); /* Add missing fields */ combineFieldMaps(fieldsFallbacks, fieldsPrimary); combinedFields = fieldsPrimary; putCombinedFieldsPropertyFirst(clazz, combinedFields); return combinedFields; } }
public static Map<String, FieldAccess> getPropertyFieldAccessMapPropertyFirst( Class<?> clazz ) { Map<String, FieldAccess> combinedFields = getCombinedFieldsPropertyFirst(clazz); if (combinedFields!=null) { return combinedFields; } else { /* Fallback map. */ Map<String, FieldAccess> fieldsFallbacks = null; /* Primary merge into this one. */ Map<String, FieldAccess> fieldsPrimary = null; /* Try to find the properties first if this is set. */ fieldsFallbacks = Reflection.getAllAccessorFields(clazz, true); fieldsPrimary = Reflection.getPropertyFieldAccessors(clazz); /* Add missing fields */ combineFieldMaps(fieldsFallbacks, fieldsPrimary); combinedFields = fieldsPrimary; putCombinedFieldsPropertyFirst(clazz, combinedFields); return combinedFields; } }
/** * Gets a list of fields merges with properties if field is not found. * * @param clazz get the properties or fields * @return map */ public static Map<String, FieldAccess> getPropertyFieldAccessMapFieldFirst( Class<?> clazz ) { Map<String, FieldAccess> combinedFieldsFieldFirst = getCombinedFieldsFieldFirst(clazz); if (combinedFieldsFieldFirst!=null) { return combinedFieldsFieldFirst; } else { /* Fallback map. */ Map<String, FieldAccess> fieldsFallbacks = null; /* Primary merge into this one. */ Map<String, FieldAccess> fieldsPrimary = null; /* Try to find the fields first if this is set. */ fieldsPrimary = Reflection.getAllAccessorFields(clazz, true); fieldsFallbacks = Reflection.getPropertyFieldAccessors(clazz); combineFieldMaps(fieldsFallbacks, fieldsPrimary); combinedFieldsFieldFirst = fieldsPrimary; putCombinedFieldsFieldFirst(clazz, combinedFieldsFieldFirst); return combinedFieldsFieldFirst; } }
/** * Gets a list of fields merges with properties if field is not found. * * @param clazz get the properties or fields * @return map */ public static Map<String, FieldAccess> getPropertyFieldAccessMapFieldFirst( Class<?> clazz ) { Map<String, FieldAccess> combinedFieldsFieldFirst = getCombinedFieldsFieldFirst(clazz); if (combinedFieldsFieldFirst!=null) { return combinedFieldsFieldFirst; } else { /* Fallback map. */ Map<String, FieldAccess> fieldsFallbacks = null; /* Primary merge into this one. */ Map<String, FieldAccess> fieldsPrimary = null; /* Try to find the fields first if this is set. */ fieldsPrimary = Reflection.getAllAccessorFields(clazz, true); fieldsFallbacks = Reflection.getPropertyFieldAccessors(clazz); combineFieldMaps(fieldsFallbacks, fieldsPrimary); combinedFieldsFieldFirst = fieldsPrimary; putCombinedFieldsFieldFirst(clazz, combinedFieldsFieldFirst); return combinedFieldsFieldFirst; } }
public static Map<String, FieldAccess> getPropertyFieldAccessMapPropertyFirstForSerializer( Class<?> clazz ) { Map<String, FieldAccess> combinedFields = getCombinedFieldsPropertyFirstForSerializer(clazz); if (combinedFields!=null) { return combinedFields; } else { /* Fallback map. */ Map<String, FieldAccess> fieldsFallbacks = null; /* Primary merge into this one. */ Map<String, FieldAccess> fieldsPrimary = null; /* Try to find the properties first if this is set. */ fieldsFallbacks = Reflection.getAllAccessorFields(clazz, true); fieldsFallbacks = removeNonSerializable(fieldsFallbacks); fieldsPrimary = Reflection.getPropertyFieldAccessors(clazz); fieldsPrimary = removeNonSerializable(fieldsPrimary); /* Add missing fields */ combineFieldMaps(fieldsFallbacks, fieldsPrimary); combinedFields = fieldsPrimary; putCombinedFieldsPropertyFirstForSerializer(clazz, combinedFields); return combinedFields; } }
public static Map<String, FieldAccess> getPropertyFieldAccessMapPropertyFirstForSerializer( Class<?> clazz ) { Map<String, FieldAccess> combinedFields = getCombinedFieldsPropertyFirstForSerializer(clazz); if (combinedFields!=null) { return combinedFields; } else { /* Fallback map. */ Map<String, FieldAccess> fieldsFallbacks = null; /* Primary merge into this one. */ Map<String, FieldAccess> fieldsPrimary = null; /* Try to find the properties first if this is set. */ fieldsFallbacks = Reflection.getAllAccessorFields(clazz, true); fieldsFallbacks = removeNonSerializable(fieldsFallbacks); fieldsPrimary = Reflection.getPropertyFieldAccessors(clazz); fieldsPrimary = removeNonSerializable(fieldsPrimary); /* Add missing fields */ combineFieldMaps(fieldsFallbacks, fieldsPrimary); combinedFields = fieldsPrimary; putCombinedFieldsPropertyFirstForSerializer(clazz, combinedFields); return combinedFields; } }
/** * Gets a list of fields merges with properties if field is not found. * * @param clazz get the properties or fields * @return map */ public static Map<String, FieldAccess> getPropertyFieldAccessMapFieldFirstForSerializer( Class<?> clazz ) { Map<String, FieldAccess> combinedFieldsFieldFirst = getCombinedFieldsFieldFirstForSerializer(clazz); if (combinedFieldsFieldFirst!=null) { return combinedFieldsFieldFirst; } else { /* Fallback map. */ Map<String, FieldAccess> fieldsFallbacks = null; /* Primary merge into this one. */ Map<String, FieldAccess> fieldsPrimary = null; /* Try to find the fields first if this is set. */ fieldsPrimary = Reflection.getAllAccessorFields(clazz, true); fieldsFallbacks = Reflection.getPropertyFieldAccessors(clazz); fieldsPrimary = removeNonSerializable(fieldsPrimary); fieldsFallbacks = removeNonSerializable(fieldsFallbacks); combineFieldMaps(fieldsFallbacks, fieldsPrimary); combinedFieldsFieldFirst = fieldsPrimary; putCombinedFieldsFieldFirstForSerializer(clazz, combinedFieldsFieldFirst); return combinedFieldsFieldFirst; } }
/** * Gets a list of fields merges with properties if field is not found. * * @param clazz get the properties or fields * @return map */ public static Map<String, FieldAccess> getPropertyFieldAccessMapFieldFirstForSerializer( Class<?> clazz ) { Map<String, FieldAccess> combinedFieldsFieldFirst = getCombinedFieldsFieldFirstForSerializer(clazz); if (combinedFieldsFieldFirst!=null) { return combinedFieldsFieldFirst; } else { /* Fallback map. */ Map<String, FieldAccess> fieldsFallbacks = null; /* Primary merge into this one. */ Map<String, FieldAccess> fieldsPrimary = null; /* Try to find the fields first if this is set. */ fieldsPrimary = Reflection.getAllAccessorFields(clazz, true); fieldsFallbacks = Reflection.getPropertyFieldAccessors(clazz); fieldsPrimary = removeNonSerializable(fieldsPrimary); fieldsFallbacks = removeNonSerializable(fieldsFallbacks); combineFieldMaps(fieldsFallbacks, fieldsPrimary); combinedFieldsFieldFirst = fieldsPrimary; putCombinedFieldsFieldFirstForSerializer(clazz, combinedFieldsFieldFirst); return combinedFieldsFieldFirst; } }