public AssignmentType subtype(String value) { getSubtype().add(value); return this; }
public List<String> createSubtypeList() { PrismForJAXBUtil.createProperty(asPrismContainerValue(), F_SUBTYPE); return getSubtype(); }
public AssignmentAsserter<R> assertSubtype(String expected) { List<String> subtypes = assignment.getSubtype(); if (subtypes.isEmpty()) { fail("No subtypes in "+desc()+", expected "+expected); } if (subtypes.size() > 1) { fail("Too many subtypes in "+desc()+", expected "+expected+", was "+subtypes); } assertEquals("Wrong subtype in "+desc(), expected, subtypes.get(0)); return this; }
public <V extends PrismValue, D extends ItemDefinition, AH extends AssignmentHolderType> Source<V,D> constructDefaultSource(ObjectDeltaObject<AH> focusOdo) throws SchemaException { if (objectTemplateMappingType != null) { return null; } PrismObject<AH> focus = focusOdo.getAnyObject(); assignmentDef = focus.getDefinition().findContainerDefinition(FocusType.F_ASSIGNMENT); PrismContainer<AssignmentType> assignment = assignmentDef.instantiate(); assignmentType = assignment.createNewValue().asContainerable(); QName relation = null; AssignmentPropertiesSpecificationType assignmentProperties = autoassignMappingType.getAssignmentProperties(); if (assignmentProperties != null) { relation = assignmentProperties.getRelation(); assignmentType.getSubtype().addAll(assignmentProperties.getSubtype()); } assignmentType.targetRef(role.getOid(), role.asPrismObject().getDefinition().getTypeName(), relation); Source<PrismContainerValue<AssignmentType>, PrismContainerDefinition<AssignmentType>> source = new Source<>(assignment, null, assignment, FocusType.F_ASSIGNMENT); return (Source<V, D>) source; }
protected PrismContainerValue<AssignmentType> createPrismValue(String oid, QName targetTypeQName, List<ItemDelta<PrismContainerValue<AssignmentType>, PrismContainerDefinition<AssignmentType>>> additionalAttributeDeltas, ExpressionEvaluationContext params) { AssignmentType assignmentType = new AssignmentType(getPrismContext()); PrismContainerValue<AssignmentType> assignmentCVal = assignmentType.asPrismContainerValue(); ObjectReferenceType targetRef = new ObjectReferenceType(); targetRef.setOid(oid); targetRef.setType(targetTypeQName); targetRef.setRelation(getRelation()); assignmentType.setTargetRef(targetRef); assignmentType.getSubtype().addAll(getSubtypes()); try { if (additionalAttributeDeltas != null) { ItemDeltaCollectionsUtil.applyTo(additionalAttributeDeltas, assignmentCVal); } getPrismContext().adopt(assignmentCVal, FocusType.COMPLEX_TYPE, FocusType.F_ASSIGNMENT); if (InternalsConfig.consistencyChecks) { assignmentCVal.assertDefinitions("assignmentCVal in assignment expression in "+params.getContextDescription()); } } catch (SchemaException e) { // Should not happen throw new SystemException(e); } return assignmentCVal; }