Search in sources :

Example 1 with PList

use of org.apache.ranger.plugin.store.PList in project ranger by apache.

the class ServiceDBStore method getPaginatedPolicies.

public PList<RangerPolicy> getPaginatedPolicies(SearchFilter filter) throws Exception {
    if (LOG.isDebugEnabled()) {
        LOG.debug("==> ServiceDBStore.getPaginatedPolicies(+ " + filter + ")");
    }
    RangerPolicyList policyList = searchRangerPolicies(filter);
    if (LOG.isDebugEnabled()) {
        LOG.debug("before filter: count=" + policyList.getListSize());
    }
    predicateUtil.applyFilter(policyList.getPolicies(), filter);
    if (LOG.isDebugEnabled()) {
        LOG.debug("after filter: count=" + policyList.getListSize());
    }
    if (LOG.isDebugEnabled()) {
        LOG.debug("<== ServiceDBStore.getPaginatedPolicies(" + filter + "): count=" + policyList.getListSize());
    }
    return new PList<RangerPolicy>(policyList.getPolicies(), policyList.getStartIndex(), policyList.getPageSize(), policyList.getTotalCount(), policyList.getResultSize(), policyList.getSortType(), policyList.getSortBy());
}
Also used : PList(org.apache.ranger.plugin.store.PList) RangerPolicyList(org.apache.ranger.view.RangerPolicyList)

Example 2 with PList

use of org.apache.ranger.plugin.store.PList in project ranger by apache.

the class ServiceDBStore method getPaginatedServiceDefs.

@Override
public PList<RangerServiceDef> getPaginatedServiceDefs(SearchFilter filter) throws Exception {
    if (LOG.isDebugEnabled()) {
        LOG.debug("==> ServiceDBStore.getPaginatedServiceDefs(" + filter + ")");
    }
    RangerServiceDefList svcDefList = serviceDefService.searchRangerServiceDefs(filter);
    predicateUtil.applyFilter(svcDefList.getServiceDefs(), filter);
    if (LOG.isDebugEnabled()) {
        LOG.debug("==> ServiceDBStore.getPaginatedServiceDefs(" + filter + ")");
    }
    return new PList<RangerServiceDef>(svcDefList.getServiceDefs(), svcDefList.getStartIndex(), svcDefList.getPageSize(), svcDefList.getTotalCount(), svcDefList.getResultSize(), svcDefList.getSortType(), svcDefList.getSortBy());
}
Also used : PList(org.apache.ranger.plugin.store.PList) RangerServiceDefList(org.apache.ranger.view.RangerServiceDefList)

Example 3 with PList

use of org.apache.ranger.plugin.store.PList in project ranger by apache.

the class RangerPluginInfoService method searchRangerPluginInfo.

public PList<RangerPluginInfo> searchRangerPluginInfo(SearchFilter searchFilter) {
    PList<RangerPluginInfo> retList = new PList<RangerPluginInfo>();
    List<RangerPluginInfo> objList = new ArrayList<RangerPluginInfo>();
    List<XXService> servicesWithTagService = daoManager.getXXService().getAllServicesWithTagService();
    List<XXPluginInfo> xObjList = searchRangerObjects(searchFilter, searchFields, sortFields, retList);
    List<Object[]> objectsList = null;
    if (CollectionUtils.isNotEmpty(xObjList)) {
        objectsList = daoManager.getXXServiceVersionInfo().getAllWithServiceNames();
    }
    for (XXPluginInfo xObj : xObjList) {
        XXServiceVersionInfo xxServiceVersionInfo = null;
        boolean hasAssociatedTagService = false;
        if (CollectionUtils.isNotEmpty(objectsList)) {
            for (Object[] objects : objectsList) {
                if (objects.length == 2) {
                    if (xObj.getServiceName().equals(objects[1])) {
                        if (objects[0] instanceof XXServiceVersionInfo) {
                            xxServiceVersionInfo = (XXServiceVersionInfo) objects[0];
                            for (XXService service : servicesWithTagService) {
                                if (service.getName().equals(xObj.getServiceName())) {
                                    hasAssociatedTagService = true;
                                    break;
                                }
                            }
                        } else {
                            LOG.warn("Expected first object to be XXServiceVersionInfo, got " + objects[0]);
                        }
                        break;
                    }
                } else {
                    LOG.warn("Expected 2 objects in the list returned by getAllWithServiceNames(), received " + objects.length);
                }
            }
        }
        RangerPluginInfo obj = populateViewObjectWithServiceVersionInfo(xObj, xxServiceVersionInfo, hasAssociatedTagService);
        objList.add(obj);
    }
    retList.setList(objList);
    return retList;
}
Also used : PList(org.apache.ranger.plugin.store.PList) ArrayList(java.util.ArrayList) XXPluginInfo(org.apache.ranger.entity.XXPluginInfo) XXService(org.apache.ranger.entity.XXService) XXServiceVersionInfo(org.apache.ranger.entity.XXServiceVersionInfo) RangerPluginInfo(org.apache.ranger.plugin.model.RangerPluginInfo)

Example 4 with PList

use of org.apache.ranger.plugin.store.PList in project ranger by apache.

the class TestServiceREST method test7getServiceDefs.

@Test
public void test7getServiceDefs() throws Exception {
    HttpServletRequest request = Mockito.mock(HttpServletRequest.class);
    SearchFilter filter = new SearchFilter();
    filter.setParam(SearchFilter.POLICY_NAME, "policyName");
    filter.setParam(SearchFilter.SERVICE_NAME, "serviceName");
    Mockito.when(searchUtil.getSearchFilter(request, serviceDefService.sortFields)).thenReturn(filter);
    List<RangerServiceDef> serviceDefsList = new ArrayList<RangerServiceDef>();
    RangerServiceDef serviceDef = rangerServiceDef();
    serviceDefsList.add(serviceDef);
    PList<RangerServiceDef> serviceDefList = new PList<RangerServiceDef>();
    serviceDefList.setPageSize(0);
    serviceDefList.setResultSize(1);
    serviceDefList.setSortBy("asc");
    serviceDefList.setSortType("1");
    serviceDefList.setStartIndex(0);
    serviceDefList.setTotalCount(10);
    serviceDefList.setList(serviceDefsList);
    Mockito.when(svcStore.getPaginatedServiceDefs(filter)).thenReturn(serviceDefList);
    RangerServiceDefList dbRangerServiceDef = serviceREST.getServiceDefs(request);
    Assert.assertNotNull(dbRangerServiceDef);
    Mockito.verify(searchUtil).getSearchFilter(request, serviceDefService.sortFields);
    Mockito.verify(svcStore).getPaginatedServiceDefs(filter);
}
Also used : HttpServletRequest(javax.servlet.http.HttpServletRequest) PList(org.apache.ranger.plugin.store.PList) RangerServiceDef(org.apache.ranger.plugin.model.RangerServiceDef) ArrayList(java.util.ArrayList) SearchFilter(org.apache.ranger.plugin.util.SearchFilter) RangerServiceDefList(org.apache.ranger.view.RangerServiceDefList) Test(org.junit.Test)

Aggregations

PList (org.apache.ranger.plugin.store.PList)4 ArrayList (java.util.ArrayList)2 RangerServiceDefList (org.apache.ranger.view.RangerServiceDefList)2 HttpServletRequest (javax.servlet.http.HttpServletRequest)1 XXPluginInfo (org.apache.ranger.entity.XXPluginInfo)1 XXService (org.apache.ranger.entity.XXService)1 XXServiceVersionInfo (org.apache.ranger.entity.XXServiceVersionInfo)1 RangerPluginInfo (org.apache.ranger.plugin.model.RangerPluginInfo)1 RangerServiceDef (org.apache.ranger.plugin.model.RangerServiceDef)1 SearchFilter (org.apache.ranger.plugin.util.SearchFilter)1 RangerPolicyList (org.apache.ranger.view.RangerPolicyList)1 Test (org.junit.Test)1