public static <O extends ObjectType> XMLGregorianCalendar getLastTouchTimestamp(PrismObject<O> object) { if (object == null) { return null; } MetadataType metadata = object.asObjectable().getMetadata(); if (metadata == null) { return null; } XMLGregorianCalendar modifyTimestamp = metadata.getModifyTimestamp(); if (modifyTimestamp != null) { return modifyTimestamp; } return metadata.getCreateTimestamp(); }
protected <O extends ObjectType> void assertLastProvisioningTimestamp(PrismObject<O> object, XMLGregorianCalendar start, XMLGregorianCalendar end) { MetadataType metadata = object.asObjectable().getMetadata(); assertNotNull("No metadata in " + object); assertBetween("Wrong last provisioning timestamp in " + object, start, end, metadata.getLastProvisioningTimestamp()); }
public static void assertCreateTimestamp(PrismObject<? extends ObjectType> object, XMLGregorianCalendar start, XMLGregorianCalendar end) { MetadataType metadata = object.asObjectable().getMetadata(); assertNotNull("No metadata in "+object, metadata); assertBetween("createTimestamp in "+object, start, end, metadata.getCreateTimestamp()); }
protected void checkApproversForCreate(Class<? extends ObjectType> clazz, String oid, List<String> expectedApprovers, OperationResult result) throws SchemaException, ObjectNotFoundException { PrismObject<? extends ObjectType> object = repositoryService.getObject(clazz, oid, null, result); checkApprovers(object, expectedApprovers, object.asObjectable().getMetadata().getCreateApproverRef(), result); }
protected <O extends ObjectType> void assertModifyMetadata(PrismObject<O> object, XMLGregorianCalendar start, XMLGregorianCalendar end) { MetadataType metadataType = object.asObjectable().getMetadata(); PrismObject<UserType> defaultActor = getDefaultActor(); assertMetadata(object.toString(), metadataType, false, false, start, end, defaultActor==null?null:defaultActor.getOid(), DEFAULT_CHANNEL); }
protected <O extends ObjectType> void assertCreateMetadata(PrismObject<O> object, XMLGregorianCalendar start, XMLGregorianCalendar end) { MetadataType metadataType = object.asObjectable().getMetadata(); PrismObject<UserType> defaultActor = getDefaultActor(); assertMetadata(object.toString(), metadataType, true, true, start, end, defaultActor==null?null:defaultActor.getOid(), DEFAULT_CHANNEL); }
public static void assertModifyTimestamp(PrismObject<? extends ObjectType> object, XMLGregorianCalendar start, XMLGregorianCalendar end, String channel) { MetadataType metadata = object.asObjectable().getMetadata(); assertNotNull("No metadata in "+object, metadata); assertBetween("modifyTimestamp in "+object, start, end, metadata.getModifyTimestamp()); if (channel != null) { assertEquals("Wrong channel", channel, metadata.getModifyChannel()); } }
public <T extends ObjectType, F extends ObjectType> void applyMetadataAdd(LensContext<F> context, PrismObject<T> objectToAdd, XMLGregorianCalendar now, Task task, OperationResult result) throws SchemaException { T objectType = objectToAdd.asObjectable(); MetadataType metadataType = objectType.getMetadata(); if (metadataType == null) { metadataType = new MetadataType(); objectType.setMetadata(metadataType); } transplantRequestMetadata(context, metadataType); applyCreateMetadata(context, metadataType, now, task); if (workflowManager != null) { metadataType.getCreateApproverRef().addAll(workflowManager.getApprovedBy(task, result)); metadataType.getCreateApprovalComment().addAll(workflowManager.getApproverComments(task, result)); } if (objectToAdd.canRepresent(FocusType.class)) { applyAssignmentMetadataObject((LensContext<? extends FocusType>) context, objectToAdd, now, task, result); } }
MetadataFactory.fromJAXB(jaxb.getMetadata(), repo, repositoryContext.prismContext, repositoryContext.relationRegistry); repo.setTenantRef(RUtil.jaxbRefToEmbeddedRepoRef(jaxb.getTenantRef(), repositoryContext.relationRegistry));
private <O extends ObjectType> void assertMetadata(O objectType, XMLGregorianCalendar startTime, XMLGregorianCalendar endTime) { MetadataType metadata = objectType.getMetadata(); assertNotNull("No metadata in "+objectType, metadata); XMLGregorianCalendar createTimestamp = metadata.getCreateTimestamp(); assertNotNull("No createTimestamp in metadata of "+objectType, createTimestamp); TestUtil.assertBetween("Wrong createTimestamp in metadata of "+objectType, startTime, endTime, createTimestamp); assertEquals("Wrong channel in metadata of "+objectType, SchemaConstants.CHANNEL_OBJECT_IMPORT_URI, metadata.getCreateChannel()); }