com.evolveum.midpoint.repo.api.RepositoryService.modifyObject()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(11.0k)|赞(0)|评价(0)|浏览(79)

本文整理了Java中com.evolveum.midpoint.repo.api.RepositoryService.modifyObject方法的一些代码示例,展示了RepositoryService.modifyObject的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RepositoryService.modifyObject方法的具体详情如下:
包路径:com.evolveum.midpoint.repo.api.RepositoryService
类名称:RepositoryService
方法名:modifyObject

RepositoryService.modifyObject介绍

暂无

代码示例

代码示例来源:origin: Evolveum/midpoint

@Override
protected boolean handleObject(PrismObject<ObjectType> object, Task workerTask, OperationResult parentResult) throws CommonException {
  OperationResult result = parentResult.createMinorSubresult(CLASS_DOT + "handleObject");
  repositoryService.modifyObject(object.asObjectable().getClass(), object.getOid(), new ArrayList<>(),
      RepoModifyOptions.createExecuteIfNoChanges(), result);
  result.computeStatusIfUnknown();
  return true;
}

代码示例来源:origin: Evolveum/midpoint

private void markWorkComplete(Task task, OperationResult result)
    throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException {
  List<ItemDelta<?, ?>> itemDeltas = prismContext.deltaFor(TaskType.class)
      .item(TaskType.F_WORK_STATE, TaskWorkStateType.F_ALL_WORK_COMPLETE).replace(true)
      .asItemDeltas();
  repositoryService.modifyObject(TaskType.class, task.getOid(), itemDeltas, result);
}

代码示例来源:origin: Evolveum/midpoint

private void deleteWorkState(Task task, OperationResult opResult) throws SchemaException, ObjectNotFoundException, ObjectAlreadyExistsException {
  List<ItemDelta<?, ?>> itemDeltas = prismContext.deltaFor(TaskType.class)
      .item(TaskType.F_WORK_STATE).replace()
      .asItemDeltas();
  repositoryService.modifyObject(TaskType.class, task.getOid(), itemDeltas, opResult);
}

代码示例来源:origin: Evolveum/midpoint

@Test
public void test120DuplicatePhotoAddOther() throws Exception {
  OperationResult result = new OperationResult(OrgPhotoTest.class.getName() + ".test120DuplicatePhotoAddOther");
  // because photo is single-value, the ADD operation will simply replace the old value
  ObjectDelta delta = parseDelta(orgOid, T106_ADD_PHOTO_BY_ADD_OTHER);
  repositoryService.modifyObject(OrgType.class, orgOid, delta.getModifications(), result);
  checkObject(orgOid, ORG_FILE, result, delta);
}

代码示例来源:origin: Evolveum/midpoint

protected void clearUserPassword(String userOid) throws SchemaException, ObjectAlreadyExistsException, ObjectNotFoundException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException {
  Task task = createTask("clearUserPassword");
  OperationResult result = task.getResult();
  List<ItemDelta<?,?>> itemDeltas = prismContext.deltaFor(UserType.class)
    .item(SchemaConstants.PATH_PASSWORD).replace()
    .asItemDeltas();
  repositoryService.modifyObject(UserType.class, userOid, itemDeltas, result);
  assertSuccess(result);
}

代码示例来源:origin: Evolveum/midpoint

@Test
public void test110DuplicatePhotoAddSame() throws Exception {
  OperationResult result = new OperationResult(UserPhotoTest.class.getName() + ".test110DuplicatePhotoAddSame");
  ObjectDelta delta = parseDelta(userOid, T005_ADD_PHOTO_BY_ADD);     // adding the same value again
  repositoryService.modifyObject(UserType.class, userOid, delta.getModifications(), result);
  checkObject(userOid, USER_FILE, result);        // no need to mention delta here, because object now should be equal to USER_FILE
  checkObjectNoPhoto(userOid, USER_FILE, result);
}

代码示例来源:origin: Evolveum/midpoint

@Test
public void test100AddPhotoByAdd() throws Exception {
  OperationResult result = new OperationResult(OrgPhotoTest.class.getName() + ".test100AddPhotoByAdd");
  ObjectDelta delta = parseDelta(orgOid, T105_ADD_PHOTO_BY_ADD);
  repositoryService.modifyObject(OrgType.class, orgOid, delta.getModifications(), result);
  checkObject(orgOid, ORG_FILE, result);        // no need to mention delta here, because object now should be equal to ORG_FILE
  checkObjectNoPhoto(orgOid, ORG_FILE, result);
}

代码示例来源:origin: Evolveum/midpoint

@Test
public void test030ModifyShadow() throws Exception {
  ObjectModificationType modification = PrismTestUtil.parseAtomicValue(
      new File(FOLDER_BASIC, "t003.xml"), ObjectModificationType.COMPLEX_TYPE);
  ObjectDelta delta = DeltaConvertor.createObjectDelta(modification, ShadowType.class, prismContext);
  delta.setOid(userOid);
  repositoryService.modifyObject(ShadowType.class, shadowOid, delta.getModifications(), new OperationResult("asdf"));
}

代码示例来源:origin: Evolveum/midpoint

@Test
public void test030RemovePhotoByReplace() throws Exception {
  OperationResult result = new OperationResult(UserPhotoTest.class.getName() + ".test030RemovePhotoByReplace");
  ObjectDelta delta1 = parseDelta(userOid, T001_ADD_EMPLOYEE_TYPE);
  ObjectDelta delta2 = parseDelta(userOid, T002_REMOVE_PHOTO);
  repositoryService.modifyObject(UserType.class, userOid, delta2.getModifications(), result);
  checkObject(userOid, USER_FILE, result, delta1, delta2);
}

代码示例来源:origin: Evolveum/midpoint

@Test
public void test130RemoveNonExistingPhotoByDelete() throws Exception {
  OperationResult result = new OperationResult(OrgPhotoTest.class.getName() + ".test130RemoveNonExistingPhotoByDelete");
  ObjectDelta delta1 = parseDelta(orgOid, T106_ADD_PHOTO_BY_ADD_OTHER);
  ObjectDelta delta2 = parseDelta(orgOid, T107_REMOVE_PHOTO_BY_DELETE);
  repositoryService.modifyObject(OrgType.class, orgOid, delta2.getModifications(), result);     // should not remove the photo because the value is different
  checkObject(orgOid, ORG_FILE, result, delta1);
  checkObject(orgOid, ORG_FILE, result, delta1, delta2);        // should be equivalent
}

代码示例来源:origin: Evolveum/midpoint

@Test
public void test130RemoveNonExistingPhotoByDelete() throws Exception {
  OperationResult result = new OperationResult(UserPhotoTest.class.getName() + ".test130RemoveNonExistingPhotoByDelete");
  ObjectDelta delta1 = parseDelta(userOid, T006_ADD_PHOTO_BY_ADD_OTHER);
  ObjectDelta delta2 = parseDelta(userOid, T007_REMOVE_PHOTO_BY_DELETE);
  repositoryService.modifyObject(UserType.class, userOid, delta2.getModifications(), result);     // should not remove the photo because the value is different
  checkObject(userOid, USER_FILE, result, delta1);
  checkObject(userOid, USER_FILE, result, delta1, delta2);        // should be equivalent
}

代码示例来源:origin: Evolveum/midpoint

@Test(expectedExceptions = ObjectNotFoundException.class)
public void test020ModifyNotExistingUser() throws Exception {
  final String TEST_NAME = "test020ModifyNotExistingUser";
  TestUtil.displayTestTitle(TEST_NAME);
  ObjectModificationType modification = PrismTestUtil.parseAtomicValue(
      MODIFY_USER_ADD_LINK, ObjectModificationType.COMPLEX_TYPE);
  Collection<? extends ItemDelta> deltas = DeltaConvertor.toModifications(modification, UserType.class, prismContext);
  OperationResult result = new OperationResult("MODIFY");
  repositoryService.modifyObject(UserType.class, "1234", deltas, getModifyOptions(), result);
}

代码示例来源:origin: Evolveum/midpoint

/**
 * Break the user in the repo by inserting accountRef that points nowhere.
 */
private void addBrokenAccountRef(String userOid) throws ObjectNotFoundException, SchemaException, ObjectAlreadyExistsException {
  OperationResult result = new OperationResult(TestStrangeCases.class.getName() + ".addBrokenAccountRef");
  Collection<? extends ItemDelta> modifications = prismContext.deltaFactory().reference().createModificationAddCollection(UserType.class,
      UserType.F_LINK_REF, NON_EXISTENT_ACCOUNT_OID);
  repositoryService.modifyObject(UserType.class, userOid, modifications , result);
  assertSuccess(result);
}

代码示例来源:origin: Evolveum/midpoint

@Test(expectedExceptions = SchemaException.class)
public void test224DeleteKeyValue() throws Exception {
  OperationResult result = new OperationResult("test224DeleteKeyValue");
  List<ItemDelta<?,?>> modifications = prismContext.deltaFor(LookupTableType.class)
      .item(F_ROW, 1, F_KEY).delete("key 1")
      .asItemDeltas();
  repositoryService.modifyObject(LookupTableType.class, tableOid, modifications, null, result);
}

代码示例来源:origin: Evolveum/midpoint

@Test(expectedExceptions = SchemaException.class)
public void test222ReplaceKeyToNull() throws Exception {
  OperationResult result = new OperationResult("test222ReplaceKeyToNull");
  List<ItemDelta<?,?>> modifications = prismContext.deltaFor(LookupTableType.class)
      .item(F_ROW, 1, F_KEY).replace()
      .asItemDeltas();
  repositoryService.modifyObject(LookupTableType.class, tableOid, modifications, null, result);
}

代码示例来源:origin: Evolveum/midpoint

@Test
public void test050ChangePhoto() throws Exception {
  OperationResult result = new OperationResult(OrgPhotoTest.class.getName() + ".test050ReplacePhoto");
  ObjectDelta delta1 = parseDelta(orgOid, T101_ADD_ORG_TYPE);
  ObjectDelta delta2 = parseDelta(orgOid, T102_REMOVE_PHOTO);
  ObjectDelta delta3 = parseDelta(orgOid, T103_RE_ADD_PHOTO);
  ObjectDelta delta4 = parseDelta(orgOid, T104_CHANGE_PHOTO);
  repositoryService.modifyObject(OrgType.class, orgOid, delta4.getModifications(), result);
  checkObject(orgOid, ORG_FILE, result, delta1, delta2, delta3, delta4);
}

代码示例来源:origin: Evolveum/midpoint

private void assignRoleRaw(String userOid, String roleOid) throws SchemaException, CommunicationException, ObjectAlreadyExistsException, ExpressionEvaluationException, PolicyViolationException, SecurityViolationException, ConfigurationException, ObjectNotFoundException {
  ObjectDelta<UserType> userDelta = createAssignmentUserDelta(userOid, roleOid, RoleType.COMPLEX_TYPE, null, null, null, true);
  Collection<ObjectDelta<? extends ObjectType>> deltas = MiscSchemaUtil.createCollection(userDelta);
  repositoryService.modifyObject(UserType.class,
      userOid, userDelta.getModifications(), new OperationResult("dummy"));
}

代码示例来源:origin: Evolveum/midpoint

@Test(expectedExceptions = SchemaException.class)
public void test226AddKeylessRow() throws Exception {
  OperationResult result = new OperationResult("test226AddKeylessRow");
  List<ItemDelta<?,?>> modifications = prismContext.deltaFor(LookupTableType.class)
      .item(F_ROW).add(new LookupTableRowType())
      .asItemDeltas();
  repositoryService.modifyObject(LookupTableType.class, tableOid, modifications, null, result);
}

代码示例来源:origin: Evolveum/midpoint

private MidPointPrincipal save(MidPointPrincipal person, OperationResult result) throws ObjectNotFoundException, SchemaException, ObjectAlreadyExistsException {
  UserType oldUserType = getUserByOid(person.getOid(), result);
  PrismObject<UserType> oldUser = oldUserType.asPrismObject();
  PrismObject<UserType> newUser = person.getUser().asPrismObject();
  ObjectDelta<UserType> delta = oldUser.diff(newUser);
  if (LOGGER.isTraceEnabled()) {
    LOGGER.trace("Updating user {} with delta:\n{}", newUser, delta.debugDump());
  }
  repositoryService.modifyObject(UserType.class, delta.getOid(), delta.getModifications(),
      new OperationResult(OPERATION_UPDATE_USER));
  return person;
}

代码示例来源:origin: Evolveum/midpoint

private <F extends FocusType>  void unlink(LensContext<F> context, FocusType persona, OperationResult result) throws ObjectNotFoundException, SchemaException, ObjectAlreadyExistsException {
  ObjectDelta<F> delta = context.getFocusContext().getObjectNew().createModifyDelta();
  PrismReferenceValue refValue = prismContext.itemFactory().createReferenceValue();
  refValue.setOid(persona.getOid());
  refValue.setTargetType(persona.asPrismObject().getDefinition().getTypeName());
  delta.addModificationDeleteReference(FocusType.F_PERSONA_REF, refValue);
  repositoryService.modifyObject(delta.getObjectTypeClass(), delta.getOid(), delta.getModifications(), result);
}

相关文章

微信公众号

最新文章

更多