From 8143636a0c2bd11e9331b008c9a658e5125aa1d4 Mon Sep 17 00:00:00 2001 From: Pavol Mederly Date: Sat, 23 Sep 2017 18:35:54 +0200 Subject: [PATCH] Fixed provisioning tests. --- .../midpoint/model/test/AbstractModelIntegrationTest.java | 4 ++-- .../midpoint/repo/sql/helpers/ObjectRetriever.java | 8 ++++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/model/model-test/src/main/java/com/evolveum/midpoint/model/test/AbstractModelIntegrationTest.java b/model/model-test/src/main/java/com/evolveum/midpoint/model/test/AbstractModelIntegrationTest.java index 50fd7fca257..b1d88eeb8ee 100644 --- a/model/model-test/src/main/java/com/evolveum/midpoint/model/test/AbstractModelIntegrationTest.java +++ b/model/model-test/src/main/java/com/evolveum/midpoint/model/test/AbstractModelIntegrationTest.java @@ -4442,12 +4442,12 @@ protected String getTopOrgOid() { protected void transplantGlobalPolicyRulesAdd(File configWithGlobalRulesFile, Task task, OperationResult parentResult) throws SchemaException, IOException, ObjectNotFoundException, ObjectAlreadyExistsException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException { // copy rules from the file into live system config object PrismObject rules = prismContext.parserFor(configWithGlobalRulesFile).parse(); - ObjectDelta delta = (ObjectDelta) DeltaBuilder.deltaFor(SystemConfigurationType.class, prismContext) + ObjectDelta delta = DeltaBuilder.deltaFor(SystemConfigurationType.class, prismContext) .item(SystemConfigurationType.F_GLOBAL_POLICY_RULE).add( rules.asObjectable().getGlobalPolicyRule().stream() .map(r -> r.clone().asPrismContainerValue()) .collect(Collectors.toList())) - .asObjectDelta(SystemObjectsType.SYSTEM_CONFIGURATION.value()); + .asObjectDeltaCast(SystemObjectsType.SYSTEM_CONFIGURATION.value()); modelService.executeChanges(MiscSchemaUtil.createCollection(delta), null, task, parentResult); } diff --git a/repo/repo-sql-impl/src/main/java/com/evolveum/midpoint/repo/sql/helpers/ObjectRetriever.java b/repo/repo-sql-impl/src/main/java/com/evolveum/midpoint/repo/sql/helpers/ObjectRetriever.java index f3dd0c43bbe..d4de819f92d 100644 --- a/repo/repo-sql-impl/src/main/java/com/evolveum/midpoint/repo/sql/helpers/ObjectRetriever.java +++ b/repo/repo-sql-impl/src/main/java/com/evolveum/midpoint/repo/sql/helpers/ObjectRetriever.java @@ -573,10 +573,14 @@ private void applyShadowAttributeDefinitions(Class anyValue if (item.getDefinition() == null) { RValueType rValType = (RValueType) value[2]; if (rValType == RValueType.PROPERTY) { - PrismPropertyDefinition def = new PrismPropertyDefinitionImpl<>(name, type, object.getPrismContext()); + PrismPropertyDefinitionImpl def = new PrismPropertyDefinitionImpl<>(name, type, object.getPrismContext()); + def.setMinOccurs(0); + def.setMaxOccurs(-1); item.applyDefinition(def, true); } else if (rValType == RValueType.REFERENCE) { - PrismReferenceDefinition def = new PrismReferenceDefinitionImpl(name, type, object.getPrismContext()); + PrismReferenceDefinitionImpl def = new PrismReferenceDefinitionImpl(name, type, object.getPrismContext()); + def.setMinOccurs(0); + def.setMaxOccurs(-1); item.applyDefinition(def, true); } else { throw new UnsupportedOperationException("Unsupported value type " + rValType);