public boolean validate(EClass eClass, EObject eObject, DiagnosticChain diagnostics, Map<Object, Object> context) { Object eValidator; EClass eType = eClass; while ((eValidator = eValidatorRegistry.get(eType.eContainer())) == null) { List<EClass> eSuperTypes = eType.getESuperTypes(); if (eSuperTypes.isEmpty()) { eValidator = eValidatorRegistry.get(null); break; } else { eType = eSuperTypes.get(0); } } boolean circular = context.get(EObjectValidator.ROOT_OBJECT) == eObject; boolean result = doValidate((EValidator)eValidator, eClass, eObject, diagnostics, context); if ((result || diagnostics != null) && !circular) { result &= doValidateContents(eObject, diagnostics, context); } return result; }
public boolean validate(EDataType eDataType, Object value, DiagnosticChain diagnostics, Map<Object, Object> context) { Object eValidator = eValidatorRegistry.get(eDataType.eContainer()); if (eValidator == null) { eValidator = eValidatorRegistry.get(null); } return doValidate((EValidator)eValidator, eDataType, value, diagnostics, context); }
boolean result = doValidate((EValidator)eValidator, eClass, eObject, diagnostics, context); if (!Boolean.FALSE.equals(context.get(VALIDATE_RECURSIVELY)) && (result || diagnostics != null) && !circular)
public boolean validate(EDataType eDataType, Object value, DiagnosticChain diagnostics, Map<Object, Object> context) { Object eValidator = eValidatorRegistry.get(eDataType.eContainer()); if (eValidator == null) { eValidator = eValidatorRegistry.get(null); } return doValidate((EValidator)eValidator, eDataType, value, diagnostics, context); }