@Override public List<? extends RefinedObjectClassDefinition> getRefinedDefinitions() { return refinedResourceSchema.getRefinedDefinitions(); }
public List<? extends RefinedObjectClassDefinition> getRefinedDefinitions(ShadowKindType kind) { return LayerRefinedObjectClassDefinitionImpl .wrapCollection(refinedResourceSchema.getRefinedDefinitions(kind), layer); }
public static void validateRefinedSchema(RefinedResourceSchema refinedSchema, PrismObject<ResourceType> resource) throws SchemaException { Set<RefinedObjectClassDefinitionKey> discrs = new HashSet<>(); for (RefinedObjectClassDefinition rObjectClassDefinition: refinedSchema.getRefinedDefinitions()) { QName typeName = rObjectClassDefinition.getTypeName(); RefinedObjectClassDefinitionKey key = new RefinedObjectClassDefinitionKey(rObjectClassDefinition); if (discrs.contains(key)) { throw new SchemaException("Duplicate definition of object class "+key+" in resource schema of "+resource); } discrs.add(key); ResourceTypeUtil.validateObjectClassDefinition(rObjectClassDefinition, resource); } }
@Test public void test101EntitlementRefinedObjectClassesModel() throws Exception { final String TEST_NAME = "test101EntitlementRefinedObjectClassesModel"; TestUtil.displayTestTitle(this, TEST_NAME); // WHEN Collection<? extends RefinedObjectClassDefinition> entitlementROcDefs = refinedSchemaModel.getRefinedDefinitions(ShadowKindType.ENTITLEMENT); display("entitlement rOcDefs", entitlementROcDefs); // THEN for (RefinedObjectClassDefinition entitlementROcDef: entitlementROcDefs) { assertEquals("Wrong kind in "+entitlementROcDef, ShadowKindType.ENTITLEMENT, entitlementROcDef.getKind()); } assertEquals("Wrong number of entitlement rOcDefs", 6, entitlementROcDefs.size()); }
@Test public void test100EntitlementRefinedObjectClasses() throws Exception { final String TEST_NAME = "test100EntitlementRefinedObjectClasses"; TestUtil.displayTestTitle(this, TEST_NAME); // WHEN Collection<? extends RefinedObjectClassDefinition> entitlementROcDefs = refinedSchema.getRefinedDefinitions(ShadowKindType.ENTITLEMENT); display("entitlement rOcDefs", entitlementROcDefs); // THEN for (RefinedObjectClassDefinition entitlementROcDef: entitlementROcDefs) { assertEquals("Wrong kind in "+entitlementROcDef, ShadowKindType.ENTITLEMENT, entitlementROcDef.getKind()); } assertEquals("Wrong number of entitlement rOcDefs", 6, entitlementROcDefs.size()); }
for (RefinedObjectClassDefinition def : schema.getRefinedDefinitions()) { StringBuilder sb1 = new StringBuilder();
@Test public void test130ProtectedAccount() throws Exception { final String TEST_NAME = "test130ProtectedAccount"; TestUtil.displayTestTitle(TEST_NAME); // GIVEN PrismContext prismContext = createInitializedPrismContext(); PrismObject<ResourceType> resource = prismContext.parseObject(RESOURCE_COMPLEX_FILE); ResourceType resourceType = resource.asObjectable(); RefinedResourceSchema rSchema = RefinedResourceSchemaImpl.parse(resourceType, prismContext); assertNotNull("Refined schema is null", rSchema); assertFalse("No account definitions", rSchema.getRefinedDefinitions(ShadowKindType.ACCOUNT).isEmpty()); RefinedObjectClassDefinition rAccount = rSchema.getRefinedDefinition(ShadowKindType.ACCOUNT, (String)null); // WHEN Collection<ResourceObjectPattern> protectedAccounts = rAccount.getProtectedObjectPatterns(); // THEN assertNotNull("Null protectedAccounts", protectedAccounts); assertFalse("Empty protectedAccounts", protectedAccounts.isEmpty()); assertEquals("Unexpected number of protectedAccounts", 2, protectedAccounts.size()); Iterator<ResourceObjectPattern> iterator = protectedAccounts.iterator(); assertDeprecatedProtectedAccount("first protected account", iterator.next(), "uid=idm,ou=Administrators,dc=example,dc=com", rAccount); assertDeprecatedProtectedAccount("second protected account", iterator.next(), "uid=root,ou=Administrators,dc=example,dc=com", rAccount); }
RefinedObjectClassDefinition anyDefinition = ctx.getRefinedSchema().getRefinedDefinitions().iterator().next(); rAttrDef = anyDefinition.findAttributeDefinition(identifier.getElementName()); if (primaryIdentifiersOnly && !anyDefinition.isPrimaryIdentifier(identifier.getElementName())) {
@Test public void test120CreateShadow() throws Exception { final String TEST_NAME = "test120CreateShadow"; TestUtil.displayTestTitle(TEST_NAME); // GIVEN PrismContext prismContext = createInitializedPrismContext(); PrismObject<ResourceType> resource = prismContext.parseObject(RESOURCE_COMPLEX_FILE); ResourceType resourceType = resource.asObjectable(); RefinedResourceSchema rSchema = RefinedResourceSchemaImpl.parse(resourceType, prismContext); assertNotNull("Refined schema is null", rSchema); assertFalse("No account definitions", rSchema.getRefinedDefinitions(ShadowKindType.ACCOUNT).isEmpty()); RefinedObjectClassDefinition rAccount = rSchema.getRefinedDefinition(ShadowKindType.ACCOUNT, (String)null); // WHEN PrismObject<ShadowType> blankShadow = rAccount.createBlankShadow(); // THEN assertNotNull("No blank shadow", blankShadow); assertNotNull("No prism context in blank shadow", blankShadow.getPrismContext()); PrismObjectDefinition<ShadowType> objectDef = blankShadow.getDefinition(); assertNotNull("Blank shadow has no definition", objectDef); PrismContainerDefinition<?> attrDef = objectDef.findContainerDefinition(ShadowType.F_ATTRIBUTES); assertNotNull("Blank shadow has no definition for attributes", attrDef); assertTrue("Wrong class for attributes definition: "+attrDef.getClass(), attrDef instanceof ResourceAttributeContainerDefinition); }
System.out.println(rSchema.debugDump()); assertFalse("No account definitions", rSchema.getRefinedDefinitions(ShadowKindType.ACCOUNT).isEmpty()); assertEquals("Unexpected number of propertyDefinitions", 53, propertyDefinitions.size()); assertFalse("No entitlement definitions", rSchema.getRefinedDefinitions(ShadowKindType.ENTITLEMENT).isEmpty()); RefinedObjectClassDefinition rEntDef = rSchema.getRefinedDefinition(ShadowKindType.ENTITLEMENT, (String)null); assertNotNull("No entitlement definition for null intent", rEntDef);
assertFalse("No account definitions", rSchema.getRefinedDefinitions(ShadowKindType.ACCOUNT).isEmpty()); assertFalse("No entitlement definitions", rSchema.getRefinedDefinitions(ShadowKindType.ENTITLEMENT).isEmpty()); RefinedObjectClassDefinition rEntDef = rSchema.getRefinedDefinition(ShadowKindType.ENTITLEMENT, (String)null); assertNotNull("No entitlement definition for null intent", rEntDef);
continue; List<? extends RefinedObjectClassDefinition> refinedDefinitions = refinedResourceSchema.getRefinedDefinitions(); for (RefinedObjectClassDefinition refinedDefinition : refinedDefinitions) { LOGGER.debug("Processing refined definition {}", refinedDefinition);
List<? extends RefinedObjectClassDefinition> refinedDefinitions = refinedResourceSchema.getRefinedDefinitions(); for (RefinedObjectClassDefinition refinedDefinition : refinedDefinitions) { LOGGER.debug("Processing refined definition {} in {}", refinedDefinition, resource);