private static void mergeExtension(Item<PrismContainerValue<AssignmentType>,PrismContainerDefinition<AssignmentType>> dstItem, Item<PrismContainerValue<AssignmentType>,PrismContainerDefinition<AssignmentType>> srcItem) throws SchemaException { if (srcItem == null || dstItem == null) { return; } PrismContainer<Containerable> srcExtension = ((PrismContainer<AssignmentType>)srcItem).findContainer(AssignmentType.F_EXTENSION); mergeExtensionContainers(dstItem, srcExtension); }
private PrismContainer<?> getIcfConfigurationProperties(ResourceType resource) { if (resource == null) { return null; } PrismContainer<?> connectorConfiguration = resource.asPrismObject().findContainer(ResourceType.F_CONNECTOR_CONFIGURATION); if (connectorConfiguration == null) { return null; } return connectorConfiguration.findContainer(SchemaConstants.ICF_CONFIGURATION_PROPERTIES); }
@Test public void test004Configuration() throws Exception { final String TEST_NAME = "test004Configuration"; TestUtil.displayTestTitle(TEST_NAME); // GIVEN Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); // WHEN resource = provisioningService.getObject(ResourceType.class, getResourceOid(), null, task, result); resourceType = resource.asObjectable(); PrismContainer<Containerable> configurationContainer = resource.findContainer(ResourceType.F_CONNECTOR_CONFIGURATION); assertNotNull("No configuration container", configurationContainer); PrismContainerDefinition confContDef = configurationContainer.getDefinition(); assertNotNull("No configuration container definition", confContDef); PrismContainer confingurationPropertiesContainer = configurationContainer.findContainer(SchemaConstants.CONNECTOR_SCHEMA_CONFIGURATION_PROPERTIES_ELEMENT_QNAME); assertNotNull("No configuration properties container", confingurationPropertiesContainer); PrismContainerDefinition confPropDef = confingurationPropertiesContainer.getDefinition(); assertNotNull("No configuration properties container definition", confPropDef); }
private PrismContainer<Containerable> assertResource(PrismObject<ResourceType> resource, String resourceName, String namespace, String connectorOid, boolean fromRepo) { ResourceType resourceType = resource.asObjectable(); assertNotNull(resourceType); PrismAsserts.assertEqualsPolyString("Wrong resource name", resourceName, resourceType.getName()); assertEquals("Wrong namespace of "+resource, namespace, ResourceTypeUtil.getResourceNamespace(resourceType)); assertEquals("Wrong connector OID in "+resource, connectorOid, resourceType.getConnectorRef().getOid()); // The password in the resource configuration should be encrypted after import PrismContainer<Containerable> configurationContainer = resource.findContainer(ResourceType.F_CONNECTOR_CONFIGURATION); PrismContainer<Containerable> configurationPropertiesContainer = configurationContainer.findContainer(SchemaTestConstants.ICFC_CONFIGURATION_PROPERTIES); assertNotNull("No configurationProperties in resource", configurationPropertiesContainer); return configurationPropertiesContainer; }
PrismContainer<Containerable> configurationContainer = resource.findContainer(ResourceType.F_CONNECTOR_CONFIGURATION); assertNotNull("No configuration container in "+resource+" from "+source, configurationContainer); PrismContainer<Containerable> configPropsContainer = configurationContainer.findContainer(SchemaTestConstants.ICFC_CONFIGURATION_PROPERTIES); assertNotNull("No configuration properties container in "+resource+" from "+source, configPropsContainer); List<? extends Item<?,?>> configProps = configPropsContainer.getValue().getItems();
assertEquals("Wrong number of config items", 2, configItems.size()); PrismContainer<?> dummyConfigPropertiesContainer = configurationContainer.findContainer( SchemaConstants.CONNECTOR_SCHEMA_CONFIGURATION_PROPERTIES_ELEMENT_QNAME); assertNotNull("No icfc:configurationProperties container", dummyConfigPropertiesContainer);
private void assertResourceDummy(PrismObject<ResourceType> resource, boolean expectSchema) { assertResource(resource, expectSchema); PrismContainer<ConnectorConfigurationType> configurationContainer = resource.findContainer(ResourceType.F_CONNECTOR_CONFIGURATION); PrismContainerDefinition<ConnectorConfigurationType> configurationContainerDefinition = configurationContainer.getDefinition(); assertDummyConfigurationContainerDefinition(configurationContainerDefinition, "from container"); PrismContainer<Containerable> configurationPropertiesContainer = configurationContainer.findContainer(SchemaConstants.CONNECTOR_SCHEMA_CONFIGURATION_PROPERTIES_ELEMENT_QNAME); assertNotNull("No container "+SchemaConstants.CONNECTOR_SCHEMA_CONFIGURATION_PROPERTIES_ELEMENT_QNAME, configurationPropertiesContainer); assertConfigurationPropertyDefinition(configurationPropertiesContainer, "uselessString", DOMUtil.XSD_STRING, 0, 1, "UI_INSTANCE_USELESS_STRING", "UI_INSTANCE_USELESS_STRING_HELP"); PrismContainerDefinition<Containerable> configurationPropertiesContainerDefinition = configurationContainerDefinition.findContainerDefinition(SchemaConstants.CONNECTOR_SCHEMA_CONFIGURATION_PROPERTIES_ELEMENT_QNAME); configurationPropertiesContainerDefinition = configurationPropertiesContainer.getDefinition(); assertNotNull("No container definition in "+configurationPropertiesContainer); assertConfigurationPropertyDefinition(configurationPropertiesContainerDefinition, "uselessString", DOMUtil.XSD_STRING, 0, 1, "UI_INSTANCE_USELESS_STRING", "UI_INSTANCE_USELESS_STRING_HELP"); PrismObjectDefinition<ResourceType> objectDefinition = resource.getDefinition(); assertNotNull("No object definition in resource", objectDefinition); PrismContainerDefinition<ConnectorConfigurationType> configurationContainerDefinitionFromObjectDefinition = objectDefinition.findContainerDefinition(ResourceType.F_CONNECTOR_CONFIGURATION); assertDummyConfigurationContainerDefinition(configurationContainerDefinitionFromObjectDefinition, "from object definition"); }
assertEquals("Wrong number of config items", isSimple ? 1 : 4, configItems.size()); PrismContainer<?> ldapConfigPropertiesContainer = configurationContainer.findContainer(ICFC_CONFIGURATION_PROPERTIES); assertNotNull("No icfcldap:configurationProperties container", ldapConfigPropertiesContainer); PrismContainerDefinition<?> ldapConfigPropertiesContainerDef = ldapConfigPropertiesContainer.getDefinition();
assertNotNull("No configuration container definition", confContDef); PrismContainer confingurationPropertiesContainer = configurationContainer .findContainer(SchemaConstants.CONNECTOR_SCHEMA_CONFIGURATION_PROPERTIES_ELEMENT_QNAME); assertNotNull("No configuration properties container", confingurationPropertiesContainer); PrismContainerDefinition confPropsDef = confingurationPropertiesContainer.getDefinition();
assertEquals("Wrong number of config items", 1, configItems.size()); PrismContainer<?> ldapConfigPropertiesContainer = configurationContainer.findContainer(ICFC_CONFIGURATION_PROPERTIES); assertNotNull("No icfcldap:configurationProperties container", ldapConfigPropertiesContainer); PrismContainerDefinition<?> ldapConfigPropertiesContainerDef = ldapConfigPropertiesContainer.getDefinition();
assertNull("'Indexed' attribute on 'longType' property is not null", durationTypePropertyDef.isIndexed()); PrismContainer<?> locationsType = extension.findContainer(EXTENSION_LOCATIONS_ELEMENT); PrismContainerDefinition<?> localtionsDef = locationsType.getDefinition(); PrismAsserts.assertDefinition(localtionsDef, EXTENSION_LOCATIONS_ELEMENT, EXTENSION_LOCATIONS_TYPE_QNAME, 0, -1);