@Nullable public static ObjectSynchronizationType findObjectSynchronization(@Nullable ResourceType resource, @Nullable ShadowKindType kind, @Nullable String intent) { if (resource == null || resource.getSynchronization() == null) { return null; } for (ObjectSynchronizationType def : resource.getSynchronization().getObjectSynchronization()) { if (fillDefault(kind).equals(fillDefault(def.getKind())) && fillDefault(intent).equals(fillDefault(def.getIntent()))) { return def; } } return null; }
private String getName(ObjectSynchronizationType objectSync) { StringBuilder sb = new StringBuilder(); if (objectSync.getName() != null) { sb.append(objectSync.getName()); sb.append(" ("); } sb.append("kind: "); sb.append(fillDefault(objectSync.getKind())); sb.append(", intent: "); sb.append(fillDefault(objectSync.getIntent())); if (objectSync.getName() != null) { sb.append(")"); } return sb.toString(); }
private String getName(ResourceObjectTypeDefinitionType objectType) { StringBuilder sb = new StringBuilder(); if (objectType.getDisplayName() != null) { sb.append(objectType.getDisplayName()); sb.append(" ("); } sb.append("kind: "); sb.append(fillDefault(objectType.getKind())); sb.append(", intent: "); sb.append(fillDefault(objectType.getIntent())); if (objectType.getDisplayName() != null) { sb.append(")"); } return sb.toString(); }
public static ResourceObjectTypeDefinitionType findObjectTypeDefinition(PrismObject<ResourceType> resourceObject, @Nullable ShadowKindType kind, @Nullable String intent) { if (resourceObject == null || resourceObject.asObjectable().getSchemaHandling() == null) { return null; } for (ResourceObjectTypeDefinitionType def : resourceObject.asObjectable().getSchemaHandling().getObjectType()) { if (fillDefault(kind).equals(fillDefault(def.getKind())) && fillDefault(intent).equals(fillDefault(def.getIntent()))) { return def; } } return null; }
@NotNull public String getObjectTypeName(RefinedObjectClassDefinition refinedObjectClassDefinition, boolean formatted) { if (refinedObjectClassDefinition == null) { return "?"; } StringBuilder sb = new StringBuilder(); if (refinedObjectClassDefinition.getDisplayName() != null) { sb.append(refinedObjectClassDefinition.getDisplayName()); sb.append(formatted ? LF : "/"); } sb.append(ResourceTypeUtil.fillDefault(refinedObjectClassDefinition.getKind())); sb.append(formatted ? LF : "/"); sb.append(ResourceTypeUtil.fillDefault(refinedObjectClassDefinition.getIntent())); sb.append(formatted ? LF : "/"); sb.append("("); sb.append(refinedObjectClassDefinition.getObjectClassDefinition().getTypeName().getLocalPart()); sb.append(")"); return sb.toString(); }
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); } }
for (ResourceObjectTypeDefinitionType def : schemaHandling.getObjectType()) { if (Boolean.TRUE.equals(def.isDefault())) { switch (fillDefault(def.getKind())) { case ACCOUNT: defAccount++; if (fillDefault(def.getKind()) == ShadowKindType.ACCOUNT) { totalAccount++;
ctx.resourceObject.asObjectable(), fillDefault(objectType.getKind()), fillDefault(objectType.getIntent())); DataModelUtil.PathResolutionResult result = DataModelUtil.resolvePath(mappingPath.getItemPath(), pctx); if (result == null) {
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 } } }