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

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

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

RepositoryService.isAncestor介绍

暂无

代码示例

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

@Override
public <O extends ObjectType> boolean isAncestor(PrismObject<O> object, String oid)
    throws SchemaException {
  Long startTime = repoOpStart();
  try {
    return repositoryService.isAncestor(object, oid);
  } finally {
    repoOpEnd(startTime);
  }
}

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

private <O extends ObjectType> boolean matchesOrgRelation(PrismObject<O> object, ObjectReferenceType subjectParentOrgRef,
    OrgRelationObjectSpecificationType specOrgRelation, String autzHumanReadableDesc, String desc) throws SchemaException {
  if (!prismContext.relationMatches(specOrgRelation.getSubjectRelation(), subjectParentOrgRef.getRelation())) {
    return false;
  }
  if (BooleanUtils.isTrue(specOrgRelation.isIncludeReferenceOrg()) && subjectParentOrgRef.getOid().equals(object.getOid())) {
    return true;
  }
  if (specOrgRelation.getScope() == null) {
    return repositoryService.isDescendant(object, subjectParentOrgRef.getOid());
  }
  switch (specOrgRelation.getScope()) {
    case ALL_DESCENDANTS:
      return repositoryService.isDescendant(object, subjectParentOrgRef.getOid());
    case DIRECT_DESCENDANTS:
      return hasParentOrgRef(object, subjectParentOrgRef.getOid());
    case ALL_ANCESTORS:
      return repositoryService.isAncestor(object, subjectParentOrgRef.getOid());
    default:
      throw new UnsupportedOperationException("Unknown orgRelation scope "+specOrgRelation.getScope());
  }
}

相关文章

微信公众号

最新文章

更多