@Override public MetaField getDeclaredField(final String name) { try { final MetaField mFld; if ("length".equals(name) && getEnclosedMetaObject().isArray()) { mFld = new MetaField.ArrayLengthMetaField(this); } else { mFld = new JavaReflectionField(getEnclosedMetaObject().getDeclaredField(name)); } return mFld; } catch (final Exception e) { return null; } }
@Override public MetaField getField(final String name) { JClassType type = getEnclosedMetaObject().isClassOrInterface(); if (type == null) { if ("length".equals(name) && getEnclosedMetaObject().isArray() != null) { return new MetaField.ArrayLengthMetaField(this); } return null; } JField field = type.findField(name); while ((field == null || (field != null && !field.isPublic())) && (type = type.getSuperclass()) != null && !type.getQualifiedSourceName().equals("java.lang.Object")) { field = type.findField(name); for (final JClassType interfaceType : type.getImplementedInterfaces()) { field = interfaceType.findField(name); } } if (field == null) { throw new RuntimeException("no such field: " + name + " in class: " + this); } return new GWTField(oracle, field); }
@Override public MetaField getField(final String name) { JClassType type = getEnclosedMetaObject().isClassOrInterface(); if (type == null) { if ("length".equals(name) && getEnclosedMetaObject().isArray() != null) { return new MetaField.ArrayLengthMetaField(this); } return null; } JField field = type.findField(name); while ((field == null || (field != null && !field.isPublic())) && (type = type.getSuperclass()) != null && !type.getQualifiedSourceName().equals("java.lang.Object")) { field = type.findField(name); for (final JClassType interfaceType : type.getImplementedInterfaces()) { field = interfaceType.findField(name); } } if (field == null) { throw new RuntimeException("no such field: " + name + " in class: " + this); } return new GWTField(oracle, field); }
@Override public MetaField getField(final String name) { try { final MetaField mFld; if ("length".equals(name) && getEnclosedMetaObject().isArray()) { mFld = new MetaField.ArrayLengthMetaField(this); } else { mFld = new JavaReflectionField(getEnclosedMetaObject().getField(name)); } return mFld; } catch (final Exception e) { return null; } }
@Override public MetaField getDeclaredField(final String name) { try { final MetaField mFld; if ("length".equals(name) && getEnclosedMetaObject().isArray()) { mFld = new MetaField.ArrayLengthMetaField(this); } else { mFld = new JavaReflectionField(getEnclosedMetaObject().getDeclaredField(name)); } return mFld; } catch (final Exception e) { return null; } }
@Override public MetaField getField(final String name) { try { final MetaField mFld; if ("length".equals(name) && getEnclosedMetaObject().isArray()) { mFld = new MetaField.ArrayLengthMetaField(this); } else { mFld = new JavaReflectionField(getEnclosedMetaObject().getField(name)); } return mFld; } catch (final Exception e) { return null; } }
@Override public MetaField getDeclaredField(final String name) { final JClassType type = getEnclosedMetaObject().isClassOrInterface(); if (type == null) { if ("length".equals(name) && getEnclosedMetaObject().isArray() != null) { return new MetaField.ArrayLengthMetaField(this); } return null; } final JField field = type.findField(name); if (field == null) { return null; } return new GWTField(oracle, field); }
@Override public MetaField getDeclaredField(final String name) { final JClassType type = getEnclosedMetaObject().isClassOrInterface(); if (type == null) { if ("length".equals(name) && getEnclosedMetaObject().isArray() != null) { return new MetaField.ArrayLengthMetaField(this); } return null; } final JField field = type.findField(name); if (field == null) { return null; } return new GWTField(oracle, field); }