@Override public Object getValue(Object target, String attrName) { int pos = attrName.indexOf('.'); String attribute = attrName; if (pos > 0) { attribute = attrName.substring(0, pos); } if (SeppelScope.PROPERTY_SCOPENAME.equalsIgnoreCase(attribute)) { return ((SeppelScope) target).getScopeName(); } if (SeppelScope.PROPERTY_SUBSCOPES.equalsIgnoreCase(attribute)) { return ((SeppelScope) target).getSubScopes(); } if (SeppelScope.PROPERTY_SUPERSCOPES.equalsIgnoreCase(attribute)) { return ((SeppelScope) target).getSuperScopes(); } if (SeppelScope.PROPERTY_SPACES.equalsIgnoreCase(attribute)) { return ((SeppelScope) target).getSpaces(); } if (SeppelScope.PROPERTY_OBSERVEDOBJECTS.equalsIgnoreCase(attribute)) { return ((SeppelScope) target).getObservedObjects(); } return null; }
@Override public boolean setValue(Object target, String attrName, Object value, String type) { if (JsonIdMap.REMOVE.equals(type) && value != null) { attrName = attrName + type; } if (SeppelScope.PROPERTY_SCOPENAME.equalsIgnoreCase(attrName)) { ((SeppelScope) target).withScopeName((String) value); return true; } if (SeppelScope.PROPERTY_SUBSCOPES.equalsIgnoreCase(attrName)) { ((SeppelScope) target).withSubScopes((SeppelScope) value); return true; } if ((SeppelScope.PROPERTY_SUBSCOPES + JsonIdMap.REMOVE).equalsIgnoreCase(attrName)) { ((SeppelScope) target).withoutSubScopes((SeppelScope) value); return true; } if (SeppelScope.PROPERTY_SUPERSCOPES.equalsIgnoreCase(attrName)) { ((SeppelScope) target).withSuperScopes((SeppelScope) value); return true; } if ((SeppelScope.PROPERTY_SUPERSCOPES + JsonIdMap.REMOVE).equalsIgnoreCase(attrName)) { ((SeppelScope) target).withoutSuperScopes((SeppelScope) value); return true; } if (SeppelScope.PROPERTY_SPACES.equalsIgnoreCase(attrName)) { ((SeppelScope) target).withSpaces((SeppelSpaceProxy) value); return true; } if ((SeppelScope.PROPERTY_SPACES + JsonIdMap.REMOVE).equalsIgnoreCase(attrName)) { ((SeppelScope) target).withoutSpaces((SeppelSpaceProxy) value); return true; } if (SeppelScope.PROPERTY_OBSERVEDOBJECTS.equalsIgnoreCase(attrName)) { ((SeppelScope) target).withObservedObjects((Object) value); return true; } if ((SeppelScope.PROPERTY_OBSERVEDOBJECTS + JsonIdMap.REMOVE).equalsIgnoreCase(attrName)) { ((SeppelScope) target).withoutObservedObjects((Object) value); return true; } return false; }