private void checkAssociationTargetIntent(ResourceValidationContext ctx, ItemPath path, ResourceObjectTypeDefinitionType objectType, ResourceObjectAssociationType associationDef, QName ref, String intent) { if (ResourceTypeUtil.findObjectTypeDefinition(ctx.resourceObject, associationDef.getKind(), intent) == null) { ctx.validationResult.add(Issue.Severity.WARNING, CAT_SCHEMA_HANDLING, C_TARGET_OBJECT_TYPE_DOES_NOT_EXIST, getString(CLASS_DOT + C_TARGET_OBJECT_TYPE_DOES_NOT_EXIST, getName(objectType), fillDefault(associationDef.getKind()) + "/" + fillDefault(intent), prettyPrintUsingStandardPrefix(ref)), ctx.resourceRef, path); } }
private void checkDependencies(ResourceValidationContext ctx, ItemPath path, ResourceObjectTypeDefinitionType objectType) { for (ResourceObjectTypeDependencyType dependency : objectType.getDependency()) { if (dependency.getResourceRef() == null || (ctx.resourceObject.getOid() != null && ctx.resourceObject.getOid().equals(dependency.getResourceRef().getOid()))) { if (ResourceTypeUtil.findObjectTypeDefinition(ctx.resourceObject, dependency.getKind(), dependency.getIntent()) == null) { ctx.validationResult.add(Issue.Severity.WARNING, CAT_SCHEMA_HANDLING, C_DEPENDENT_OBJECT_TYPE_DOES_NOT_EXIST, getString(CLASS_DOT + C_DEPENDENT_OBJECT_TYPE_DOES_NOT_EXIST, getName(objectType), fillDefault(dependency.getKind()) + "/" + fillDefault(dependency.getIntent())), ctx.resourceRef, path.append(ResourceObjectTypeDefinitionType.F_DEPENDENCY)); } } else { // check in 'remote' resource only if thorough validation is required } } }