/**
* Gets the Policy for a given domain and the policy
*
* @return - Policy
* @throws Exception
*/
@Path("/{domainId}/policies/{policyId}")
@GET
public PolicyEntity getPolicy(@PathParam("domainId") Long domainId, @PathParam("policyId") Long policyId)
throws Exception {
LOG.info("getting Policy for Policy ID..:" + policyId);
return this.txControl.supports(new Callable<PolicyEntity>() {
@Override
public PolicyEntity call() throws Exception {
CriteriaBuilder criteriaBuilder = DomainApis.this.em.getCriteriaBuilder();
CriteriaQuery<PolicyEntity> query = criteriaBuilder.createQuery(PolicyEntity.class);
Root<PolicyEntity> r = query.from(PolicyEntity.class);
query.select(r).where(criteriaBuilder.and(criteriaBuilder.equal(r.get("domain").get("id"), domainId),
criteriaBuilder.equal(r.get("id"), policyId)));
List<PolicyEntity> result = DomainApis.this.em.createQuery(query).getResultList();
if (result.isEmpty()) {
throw new Exception("Policy or Domain Entity does not exists...");
//TODO - Add 404 error response - Sudhir
}
return result.get(0);
}
});
}
DomainApis.java 文件源码
java
阅读 45
收藏 0
点赞 0
评论 0
项目:security-mgr-sample-plugin
作者:
评论列表
文章目录