private void setAssociationName(Collection<PrismContainerValue<ShadowAssociationType>> values, QName itemName) { if (values == null) { return; } for (PrismContainerValue<ShadowAssociationType> val: values) { val.asContainerable().setName(itemName); } }
public static <T extends Containerable> T getFieldSingleContainerable(PrismContainerValue<?> parent, QName fieldName, Class<T> fieldClass) { PrismContainerValue<T> fieldContainerValue = getFieldContainerValue(parent, fieldName); if (fieldContainerValue == null) { return null; } return fieldContainerValue.asContainerable(fieldClass); }
@NotNull @Override public Collection<C> getRealValues() { List<C> realValues = new ArrayList<>(getValues().size()); for (PrismContainerValue<C> value : getValues()) { realValues.add(value.asContainerable()); } return realValues; }
public static AssignmentType getAssignmentToBeModified(PrismContainer<AssignmentType> assignmentsOld, Long id) { if (id == null && assignmentsOld.size() == 1) { return assignmentsOld.getValue().asContainerable(); } PrismContainerValue<AssignmentType> value = assignmentsOld.getValue(id); if (value == null) { throw new IllegalStateException("No assignment value with id " + id + " in user old"); } return value.asContainerable(); }
private List<TriggerType> getSortedTriggers(List<PrismContainerValue<TriggerType>> triggerCVals) { List<TriggerType> rv = new ArrayList<>(); triggerCVals.forEach(cval -> rv.add(cval.clone().asContainerable())); rv.sort(Comparator.comparingLong(t -> XmlTypeConverter.toMillis(t.getTimestamp()))); return rv; }
@SuppressWarnings("unused") // used by certification cases report public static List<String> getComments(PrismContainerValue<AccessCertificationCaseType> pcv) { List<String> rv = new ArrayList<>(); for (AccessCertificationWorkItemType workItem : pcv.asContainerable().getWorkItem()) { if (!StringUtils.isEmpty(WorkItemTypeUtil.getComment(workItem))) { rv.add(WorkItemTypeUtil.getComment(workItem)); } } return rv; }
@SuppressWarnings("unused") // used by certification cases report public static List<ObjectReferenceType> getReviewedBy(PrismContainerValue<AccessCertificationCaseType> pcv) { List<ObjectReferenceType> rv = new ArrayList<>(); for (AccessCertificationWorkItemType workItem : pcv.asContainerable().getWorkItem()) { if (!hasNoResponse(workItem)) { rv.add(workItem.getPerformerRef()); } } return rv; }
void addToPrismContainer(PrismContainer<LensFocusContextType> lensFocusContextTypeContainer, boolean reduced) throws SchemaException { LensFocusContextType lensFocusContextType = lensFocusContextTypeContainer.createNewValue().asContainerable(); super.storeIntoLensElementContextType(lensFocusContextType, reduced); lensFocusContextType.setSecondaryDeltas(secondaryDeltas.toObjectDeltaWavesType()); }
private ItemDeltaItem<PrismContainerValue<AssignmentType>, PrismContainerDefinition<AssignmentType>> createAssignmentIdiNoChange( PrismContainerValue<AssignmentType> cval) throws SchemaException { ItemDeltaItem<PrismContainerValue<AssignmentType>, PrismContainerDefinition<AssignmentType>> idi = new ItemDeltaItem<>(); idi.setItemOld(LensUtil.createAssignmentSingleValueContainerClone(cval.asContainerable())); idi.recompute(); return idi; }
private ItemDeltaItem<PrismContainerValue<AssignmentType>, PrismContainerDefinition<AssignmentType>> createAssignmentIdiInternalChange( PrismContainerValue<AssignmentType> cval, Collection<? extends ItemDelta<?, ?>> subItemDeltas) throws SchemaException { ItemDeltaItem<PrismContainerValue<AssignmentType>, PrismContainerDefinition<AssignmentType>> idi = new ItemDeltaItem<>(); idi.setItemOld(LensUtil.createAssignmentSingleValueContainerClone(cval.asContainerable())); idi.setSubItemDeltas(subItemDeltas); idi.recompute(); return idi; }
@Override protected void assertPrismContainerValueLocal(PrismContainerValue<RoleType> value) throws SchemaException { PrismObject user = value.asContainerable().asPrismObject(); user.checkConsistence(); assertMetarolePrism(user, false); assertMetaroleJaxb(value.asContainerable(), false); }
protected void assertPasswordMetadata(PrismObject<UserType> user, QName credentialType, boolean create, XMLGregorianCalendar start, XMLGregorianCalendar end, String actorOid, String channel) { PrismContainer<MetadataType> metadataContainer = user.findContainer(ItemPath.create(UserType.F_CREDENTIALS, credentialType, PasswordType.F_METADATA)); assertNotNull("No password metadata in "+user, metadataContainer); MetadataType metadataType = metadataContainer.getValue().asContainerable(); assertMetadata("password metadata in "+user, metadataType, create, false, start, end, actorOid, channel); }
@Test public void testParseRoundTrip() throws Exception{ displayTestTitle("testParseRoundTrip"); //processParsings(v -> getPrismContext().serializerFor(language).serialize(v)); // no item name nor definition => cannot serialize processParsings(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serialize(v), "s1"); processParsings(v -> getPrismContext().serializerFor(language).root(SchemaConstantsGenerated.C_USER).serialize(v), "s2"); // misleading item name processParsings(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serializeRealValue(v.asContainerable()), "s3"); processParsings(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serializeAnyData(v.asContainerable()), "s4"); }
@Test public void testParseRoundTrip() throws Exception{ displayTestTitle("testParseRoundTrip"); //processParsings(v -> getPrismContext().serializerFor(language).serialize(v)); // no item name nor definition => cannot serialize processParsings(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serialize(v), "s1"); processParsings(v -> getPrismContext().serializerFor(language).root(SchemaConstantsGenerated.C_USER).serialize(v), "s2"); // misleading item name processParsings(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serializeRealValue(v.asContainerable()), "s3"); processParsings(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serializeAnyData(v.asContainerable()), "s4"); }
@Test public void testParseRoundTrip() throws Exception{ displayTestTitle("testParseRoundTrip"); //processParsings(v -> getPrismContext().serializerFor(language).serialize(v)); // no item name nor definition => cannot serialize processParsings(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serialize(v), "s1"); processParsings(v -> getPrismContext().serializerFor(language).root(SchemaConstantsGenerated.C_USER).serialize(v), "s2"); // misleading item name processParsings(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serializeRealValue(v.asContainerable()), "s3"); processParsings(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serializeAnyData(v.asContainerable()), "s4"); }
protected void assertAssignmentsWithTargets(PrismObject<UserType> user, int expectedNumber) { PrismContainer<AssignmentType> assignmentContainer = user.findContainer(UserType.F_ASSIGNMENT); assertEquals("Unexpected number of assignments in "+user, expectedNumber, assignmentContainer.size()); for (PrismContainerValue<AssignmentType> cval: assignmentContainer.getValues()) { assertNotNull("No targetRef in assignment in "+user, cval.asContainerable().getTargetRef()); } }
@Test @SuppressWarnings("Duplicates") public void testParseRoundTripAsPCV() throws Exception{ displayTestTitle("testParseRoundTripAsPCV"); processParsingsPCV(v -> getPrismContext().serializerFor(language).serialize(v), "s0"); processParsingsPCV(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serialize(v), "s1"); processParsingsPCV(v -> getPrismContext().serializerFor(language).root(SchemaConstantsGenerated.C_USER).serialize(v), "s2"); // misleading item name processParsingsPCV(v -> getPrismContext().serializerFor(language).serializeRealValue(v.asContainerable()), "s3"); processParsingsPCV(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serializeAnyData(v.asContainerable()), "s4"); }
@Test @SuppressWarnings("Duplicates") public void testParseRoundTripAsPCV() throws Exception{ displayTestTitle("testParseRoundTripAsPCV"); processParsingsPCV(v -> getPrismContext().serializerFor(language).serialize(v), "s0"); processParsingsPCV(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serialize(v), "s1"); processParsingsPCV(v -> getPrismContext().serializerFor(language).root(SchemaConstantsGenerated.C_SYSTEM_CONFIGURATION).serialize(v), "s2"); // misleading item name processParsingsPCV(v -> getPrismContext().serializerFor(language).serializeRealValue(v.asContainerable()), "s3"); processParsingsPCV(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serializeAnyData(v.asContainerable()), "s4"); }
@Test public void testParseRoundTripAsPCV() throws Exception{ displayTestTitle("testParseRoundTripAsPCV"); processParsingsPCV(v -> getPrismContext().serializerFor(language).serialize(v), "s0"); processParsingsPCV(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serialize(v), "s1"); processParsingsPCV(v -> getPrismContext().serializerFor(language).root(SchemaConstantsGenerated.C_SYSTEM_CONFIGURATION).serialize(v), "s2"); // misleading item name processParsingsPCV(v -> getPrismContext().serializerFor(language).serializeRealValue(v.asContainerable()), "s3"); processParsingsPCV(v -> getPrismContext().serializerFor(language).root(new QName("dummy")).serializeAnyData(v.asContainerable()), "s4"); }
private void assertRow(PrismContainerValue<LookupTableRowType> tableContainerValue, String key, String value, PolyStringType label, XMLGregorianCalendar lastChangeTimestamp) { LookupTableRowType row = tableContainerValue.asContainerable(); assertEquals("wrong key", key, row.getKey()); assertEquals("wrong value", value, row.getValue()); assertEquals("wrong label", label, row.getLabel()); assertEquals("wrong lastChangeTimestamp", lastChangeTimestamp, row.getLastChangeTimestamp()); }