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

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

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

RepositoryService.executeQueryDiagnostics介绍

暂无

代码示例

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

@Override
public RepositoryQueryDiagResponse executeQueryDiagnostics(RepositoryQueryDiagRequest request, OperationResult result) {
  Long startTime = repoOpStart();
  try {
    return repositoryService.executeQueryDiagnostics(request, result);
  } finally {
    repoOpEnd(startTime);
  }
}

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

@Override
public RepositoryQueryDiagResponse executeRepositoryQuery(RepositoryQueryDiagRequest request, Task task, OperationResult parentResult) throws SchemaException, SecurityViolationException, ObjectNotFoundException, ExpressionEvaluationException, ConfigurationException, CommunicationException {
  OperationResult result = parentResult.createSubresult(EXECUTE_REPOSITORY_QUERY);
  try {
    boolean isAdmin;
    if (request.getImplementationLevelQuery() == null && request.isTranslateOnly()) {
      // special case - no hibernate query and translate-only: does not require authorization
      isAdmin = false;
    } else {
      // otherwise admin authorization is required
      securityEnforcer.authorize(AuthorizationConstants.AUTZ_ALL_URL, null, AuthorizationParameters.EMPTY, null, task, result);
      isAdmin = true;
    }
    RepositoryQueryDiagResponse response = repositoryService.executeQueryDiagnostics(request, result);
    if (!isAdmin && response.getQueryResult() != null) {
      // double check we don't leak any data
      throw new IllegalStateException("Unauthorized access yields returning data from the repository");
    }
    return response;
  } catch (Throwable t) {
    result.recordFatalError(t);
    throw t;
  } finally {
    result.computeStatusIfUnknown();
  }
}

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

valueRequest.setImplementationLevelQuery("select l.value from ROExtLong l join RExtItem i on l.itemId = i.id where i.name='" + QNameUtil
    .qNameToUri(SchemaConstants.SYNC_TOKEN) + "'");
RepositoryQueryDiagResponse valueResponse = repositoryService.executeQueryDiagnostics(valueRequest, result);
System.out.println(valueResponse.getQueryResult());
assertTrue("Unexpected repo query result on sync token: "+ valueResponse.getQueryResult(), valueResponse.getQueryResult().isEmpty());
RepositoryQueryDiagResponse dictionaryResponse = repositoryService.executeQueryDiagnostics(valueRequest, result);
System.out.println(dictionaryResponse.getQueryResult());
assertTrue("Unexpected repo query result on sync token definition: "+ dictionaryResponse.getQueryResult(), dictionaryResponse.getQueryResult().isEmpty());

相关文章

微信公众号

最新文章

更多