Search in sources :

Example 1 with ResRepFilter

use of com.emc.storageos.api.service.impl.response.ResRepFilter in project coprhd-controller by CoprHD.

the class IpInterfaceService method getOtherSearchResults.

/**
 * parameter: 'ip_address' The ip address of the ipInterface
 *
 * @return Return a list of ipinterfaces that contains the ip address specified
 *         or an empty list if no match was found.
 */
@Override
protected SearchResults getOtherSearchResults(Map<String, List<String>> parameters, boolean authorized) {
    SearchResults result = new SearchResults();
    if (!parameters.containsKey("ip_address")) {
        throw APIException.badRequests.invalidParameterSearchMissingParameter(getResourceClass().getName(), "ip_address");
    }
    for (Map.Entry<String, List<String>> entry : parameters.entrySet()) {
        if (!entry.getKey().equals("ip_address")) {
            throw APIException.badRequests.parameterForSearchCouldNotBeCombinedWithAnyOtherParameter(getResourceClass().getName(), "ip_address", entry.getKey());
        }
    }
    String ip = parameters.get("ip_address").get(0);
    // Validate that the ip_address value is not empty
    ArgValidator.checkFieldNotEmpty(ip, "ip_address");
    // Validate the format of the initiator port.
    if (!EndpointUtility.isValidEndpoint(ip, EndpointType.IP)) {
        throw APIException.badRequests.invalidParameterInvalidIP("ip_address", ip);
    }
    SearchedResRepList resRepList = new SearchedResRepList(getResourceType());
    // Finds the IpInterface that includes the ip address specified, if any.
    _dbClient.queryByConstraint(AlternateIdConstraint.Factory.getIpInterfaceIpAddressConstraint(ip), resRepList);
    // Filter list based on permission
    if (!authorized) {
        Iterator<SearchResultResourceRep> _queryResultIterator = resRepList.iterator();
        ResRepFilter<SearchResultResourceRep> resRepFilter = (ResRepFilter<SearchResultResourceRep>) getPermissionFilter(getUserFromContext(), _permissionsHelper);
        SearchedResRepList filteredResRepList = new SearchedResRepList();
        filteredResRepList.setResult(new FilterIterator<SearchResultResourceRep>(_queryResultIterator, resRepFilter));
        result.setResource(filteredResRepList);
    } else {
        result.setResource(resRepList);
    }
    return result;
}
Also used : SearchResultResourceRep(com.emc.storageos.model.search.SearchResultResourceRep) SearchedResRepList(com.emc.storageos.api.service.impl.response.SearchedResRepList) List(java.util.List) BulkList(com.emc.storageos.api.service.impl.response.BulkList) SearchedResRepList(com.emc.storageos.api.service.impl.response.SearchedResRepList) SearchResults(com.emc.storageos.model.search.SearchResults) ResRepFilter(com.emc.storageos.api.service.impl.response.ResRepFilter) Map(java.util.Map)

Example 2 with ResRepFilter

use of com.emc.storageos.api.service.impl.response.ResRepFilter in project coprhd-controller by CoprHD.

the class InitiatorService method getOtherSearchResults.

/**
 * parameter: 'initiator_port' The identifier of the initiator port.
 *
 * @return Return a list of initiator that containts the initiator port specified
 *         or an empty list if no match was found.
 */
@Override
protected SearchResults getOtherSearchResults(Map<String, List<String>> parameters, boolean authorized) {
    SearchResults result = new SearchResults();
    if (!parameters.containsKey("initiator_port")) {
        throw APIException.badRequests.invalidParameterSearchMissingParameter(getResourceClass().getName(), "initiator_port");
    }
    for (Map.Entry<String, List<String>> entry : parameters.entrySet()) {
        if (!entry.getKey().equals("initiator_port")) {
            throw APIException.badRequests.parameterForSearchCouldNotBeCombinedWithAnyOtherParameter(getResourceClass().getName(), "initiator_port", entry.getKey());
        }
    }
    String port = parameters.get("initiator_port").get(0);
    // Validate that the initiator_port value is not empty
    ArgValidator.checkFieldNotEmpty(port, "initiator_port");
    // Validate the format of the initiator port.
    if (!EndpointUtility.isValidEndpoint(port, EndpointType.SAN)) {
        throw APIException.badRequests.initiatorPortNotValid();
    }
    SearchedResRepList resRepList = new SearchedResRepList(getResourceType());
    // Finds the Initiator that includes the initiator port specified, if any.
    _dbClient.queryByConstraint(AlternateIdConstraint.Factory.getInitiatorPortInitiatorConstraint(port), resRepList);
    // Filter list based on permission
    if (!authorized) {
        Iterator<SearchResultResourceRep> _queryResultIterator = resRepList.iterator();
        ResRepFilter<SearchResultResourceRep> resRepFilter = (ResRepFilter<SearchResultResourceRep>) getPermissionFilter(getUserFromContext(), _permissionsHelper);
        SearchedResRepList filteredResRepList = new SearchedResRepList();
        filteredResRepList.setResult(new FilterIterator<SearchResultResourceRep>(_queryResultIterator, resRepFilter));
        result.setResource(filteredResRepList);
    } else {
        result.setResource(resRepList);
    }
    return result;
}
Also used : SearchResultResourceRep(com.emc.storageos.model.search.SearchResultResourceRep) SearchedResRepList(com.emc.storageos.api.service.impl.response.SearchedResRepList) ITLRestRepList(com.emc.storageos.model.block.export.ITLRestRepList) List(java.util.List) BulkList(com.emc.storageos.api.service.impl.response.BulkList) SearchedResRepList(com.emc.storageos.api.service.impl.response.SearchedResRepList) SearchResults(com.emc.storageos.model.search.SearchResults) ResRepFilter(com.emc.storageos.api.service.impl.response.ResRepFilter) Map(java.util.Map)

Example 3 with ResRepFilter

use of com.emc.storageos.api.service.impl.response.ResRepFilter in project coprhd-controller by CoprHD.

the class ApprovalService method getOtherSearchResults.

/**
 * parameter: 'orderId' The id of the order to search for approvals
 * parameter: 'approvalStatus' The status for the approval.
 * parameter: 'tenantId' The id of the tenant (if not the current tenant)
 *
 * @return Return a list of matching approvals or an empty list if no match was found.
 */
@Override
protected SearchResults getOtherSearchResults(Map<String, List<String>> parameters, boolean authorized) {
    StorageOSUser user = getUserFromContext();
    String tenantId = user.getTenantId();
    if (parameters.containsKey(SearchConstants.TENANT_ID_PARAM)) {
        tenantId = parameters.get(SearchConstants.TENANT_ID_PARAM).get(0);
    }
    verifyAuthorizedInTenantOrg(uri(tenantId), user);
    if (!parameters.containsKey(SearchConstants.ORDER_ID_PARAM) && !parameters.containsKey(SearchConstants.APPROVAL_STATUS_PARAM)) {
        throw APIException.badRequests.invalidParameterSearchMissingParameter(getResourceClass().getName(), SearchConstants.ORDER_ID_PARAM + " or " + SearchConstants.APPROVAL_STATUS_PARAM);
    }
    if (parameters.containsKey(SearchConstants.ORDER_ID_PARAM) && parameters.containsKey(SearchConstants.APPROVAL_STATUS_PARAM)) {
        throw APIException.badRequests.parameterForSearchCouldNotBeCombinedWithAnyOtherParameter(getResourceClass().getName(), SearchConstants.ORDER_ID_PARAM, SearchConstants.APPROVAL_STATUS_PARAM);
    }
    List<ApprovalRequest> approvals = Lists.newArrayList();
    if (parameters.containsKey(SearchConstants.ORDER_ID_PARAM)) {
        String orderId = parameters.get(SearchConstants.ORDER_ID_PARAM).get(0);
        ArgValidator.checkFieldNotEmpty(orderId, SearchConstants.ORDER_ID_PARAM);
        approvals = approvalManager.findApprovalsByOrderId(uri(orderId));
    } else if (parameters.containsKey(SearchConstants.APPROVAL_STATUS_PARAM)) {
        String approvalStatus = parameters.get(SearchConstants.APPROVAL_STATUS_PARAM).get(0);
        ArgValidator.checkFieldNotEmpty(approvalStatus, SearchConstants.APPROVAL_STATUS_PARAM);
        approvals = approvalManager.findApprovalsByStatus(uri(tenantId), ApprovalStatus.valueOf(approvalStatus));
    }
    ResRepFilter<SearchResultResourceRep> resRepFilter = (ResRepFilter<SearchResultResourceRep>) getPermissionFilter(getUserFromContext(), _permissionsHelper);
    List<SearchResultResourceRep> searchResultResourceReps = Lists.newArrayList();
    for (ApprovalRequest approval : approvals) {
        RestLinkRep selfLink = new RestLinkRep("self", RestLinkFactory.newLink(getResourceType(), approval.getId()));
        SearchResultResourceRep searchResultResourceRep = new SearchResultResourceRep();
        searchResultResourceRep.setId(approval.getId());
        searchResultResourceRep.setLink(selfLink);
        if (authorized || resRepFilter.isAccessible(searchResultResourceRep)) {
            searchResultResourceReps.add(searchResultResourceRep);
        }
    }
    SearchResults result = new SearchResults();
    result.setResource(searchResultResourceReps);
    return result;
}
Also used : StorageOSUser(com.emc.storageos.security.authentication.StorageOSUser) SearchResultResourceRep(com.emc.storageos.model.search.SearchResultResourceRep) ApprovalRequest(com.emc.storageos.db.client.model.uimodels.ApprovalRequest) RestLinkRep(com.emc.storageos.model.RestLinkRep) ResRepFilter(com.emc.storageos.api.service.impl.response.ResRepFilter) SearchResults(com.emc.storageos.model.search.SearchResults)

Example 4 with ResRepFilter

use of com.emc.storageos.api.service.impl.response.ResRepFilter in project coprhd-controller by CoprHD.

the class OrderService method getOtherSearchResults.

/**
 * parameter: 'orderStatus' The status for the order
 * parameter: 'startTime' Start time to search for orders
 * parameter: 'endTime' End time to search for orders
 *
 * @return Return a list of matching orders or an empty list if no match was found.
 */
@Override
protected SearchResults getOtherSearchResults(Map<String, List<String>> parameters, boolean authorized) {
    StorageOSUser user = getUserFromContext();
    String tenantId = user.getTenantId();
    if (parameters.containsKey(SearchConstants.TENANT_ID_PARAM)) {
        tenantId = parameters.get(SearchConstants.TENANT_ID_PARAM).get(0);
    }
    verifyAuthorizedInTenantOrg(uri(tenantId), user);
    if (!parameters.containsKey(SearchConstants.ORDER_STATUS_PARAM) && !parameters.containsKey(SearchConstants.START_TIME_PARAM) && !parameters.containsKey(SearchConstants.END_TIME_PARAM)) {
        throw APIException.badRequests.invalidParameterSearchMissingParameter(getResourceClass().getName(), SearchConstants.ORDER_STATUS_PARAM + " or " + SearchConstants.START_TIME_PARAM + " or " + SearchConstants.END_TIME_PARAM);
    }
    if (parameters.containsKey(SearchConstants.ORDER_STATUS_PARAM) && (parameters.containsKey(SearchConstants.START_TIME_PARAM) || parameters.containsKey(SearchConstants.END_TIME_PARAM))) {
        throw APIException.badRequests.parameterForSearchCouldNotBeCombinedWithAnyOtherParameter(getResourceClass().getName(), SearchConstants.ORDER_STATUS_PARAM, SearchConstants.START_TIME_PARAM + " or " + SearchConstants.END_TIME_PARAM);
    }
    List<Order> orders = Lists.newArrayList();
    if (parameters.containsKey(SearchConstants.ORDER_STATUS_PARAM)) {
        String orderStatus = parameters.get(SearchConstants.ORDER_STATUS_PARAM).get(0);
        ArgValidator.checkFieldNotEmpty(orderStatus, SearchConstants.ORDER_STATUS_PARAM);
        orders = orderManager.findOrdersByStatus(uri(tenantId), OrderStatus.valueOf(orderStatus));
    } else if (parameters.containsKey(SearchConstants.START_TIME_PARAM) || parameters.containsKey(SearchConstants.END_TIME_PARAM)) {
        Date startTime = null;
        if (parameters.containsKey(SearchConstants.START_TIME_PARAM)) {
            startTime = TimeUtils.getDateTimestamp(parameters.get(SearchConstants.START_TIME_PARAM).get(0));
        }
        Date endTime = null;
        if (parameters.containsKey(SearchConstants.END_TIME_PARAM)) {
            endTime = TimeUtils.getDateTimestamp(parameters.get(SearchConstants.END_TIME_PARAM).get(0));
        }
        if (startTime == null && endTime == null) {
            throw APIException.badRequests.invalidParameterSearchMissingParameter(getResourceClass().getName(), SearchConstants.ORDER_STATUS_PARAM + " or " + SearchConstants.START_TIME_PARAM + " or " + SearchConstants.END_TIME_PARAM);
        }
        if (startTime.after(endTime)) {
            throw APIException.badRequests.endTimeBeforeStartTime(startTime.toString(), endTime.toString());
        }
        int maxCount = -1;
        List<String> c = parameters.get(SearchConstants.ORDER_MAX_COUNT);
        if (c != null) {
            String maxCountParam = parameters.get(SearchConstants.ORDER_MAX_COUNT).get(0);
            maxCount = Integer.parseInt(maxCountParam);
        }
        orders = orderManager.findOrdersByTimeRange(uri(tenantId), startTime, endTime, maxCount);
    }
    ResRepFilter<SearchResultResourceRep> resRepFilter = (ResRepFilter<SearchResultResourceRep>) getPermissionFilter(getUserFromContext(), _permissionsHelper);
    List<SearchResultResourceRep> searchResultResourceReps = Lists.newArrayList();
    for (Order order : orders) {
        RestLinkRep selfLink = new RestLinkRep("self", RestLinkFactory.newLink(getResourceType(), order.getId()));
        SearchResultResourceRep searchResultResourceRep = new SearchResultResourceRep();
        searchResultResourceRep.setId(order.getId());
        searchResultResourceRep.setLink(selfLink);
        if (authorized || resRepFilter.isAccessible(searchResultResourceRep)) {
            searchResultResourceReps.add(searchResultResourceRep);
        }
    }
    SearchResults result = new SearchResults();
    result.setResource(searchResultResourceReps);
    return result;
}
Also used : Order(com.emc.storageos.db.client.model.uimodels.Order) StorageOSUser(com.emc.storageos.security.authentication.StorageOSUser) SearchResultResourceRep(com.emc.storageos.model.search.SearchResultResourceRep) RestLinkRep(com.emc.storageos.model.RestLinkRep) OrderMapper.toExecutionLogList(com.emc.sa.api.mapper.OrderMapper.toExecutionLogList) NamedElementQueryResultList(com.emc.storageos.db.client.constraint.NamedElementQueryResultList) ArrayList(java.util.ArrayList) OrderMapper.toOrderLogList(com.emc.sa.api.mapper.OrderMapper.toOrderLogList) OrderLogList(com.emc.vipr.model.catalog.OrderLogList) OrderList(com.emc.vipr.model.catalog.OrderList) List(java.util.List) ExecutionLogList(com.emc.vipr.model.catalog.ExecutionLogList) URIUtil.asString(com.emc.storageos.db.client.URIUtil.asString) ResRepFilter(com.emc.storageos.api.service.impl.response.ResRepFilter) SearchResults(com.emc.storageos.model.search.SearchResults) Date(java.util.Date)

Example 5 with ResRepFilter

use of com.emc.storageos.api.service.impl.response.ResRepFilter in project coprhd-controller by CoprHD.

the class BlockService method getOtherSearchResults.

/**
 * Additional search criteria for a volume.
 *
 * If a matching volume is not found, an empty list is returned.
 *
 * Parameters - wwn String - WWN of the volume
 * - virtual_array String - URI of the source virtual array
 * - personality String - source, target, metadata
 */
@Override
protected SearchResults getOtherSearchResults(Map<String, List<String>> parameters, boolean authorized) {
    SearchResults result = new SearchResults();
    String[] searchCriteria = { SEARCH_WWN, SEARCH_VARRAY, SEARCH_PERSONALITY, SEARCH_PROTECTION };
    // Make sure the parameters passed in contain at least one of our search criteria
    // Here we search by wwn or virtual_array
    boolean found = false;
    for (String search : searchCriteria) {
        if (parameters.containsKey(search)) {
            found = true;
        }
    }
    if (!found) {
        throw APIException.badRequests.invalidParameterSearchMissingParameter(getResourceClass().getName(), searchCriteria.toString());
    }
    // Make sure all parameters are our parameters, otherwise post an exception because we don't support other
    // search criteria than our
    // own.
    String nonVolumeKey = null;
    for (Map.Entry<String, List<String>> entry : parameters.entrySet()) {
        found = false;
        for (String search : searchCriteria) {
            if (entry.getKey().equals(search)) {
                found = true;
            }
        }
        if (!found) {
            nonVolumeKey = entry.getKey();
        }
    }
    if (nonVolumeKey != null) {
        throw APIException.badRequests.parameterForSearchCouldNotBeCombinedWithAnyOtherParameter(getResourceClass().getName(), searchCriteria.toString(), nonVolumeKey);
    }
    boolean simpleSearch = false;
    // Now perform individual searches based on the input criteria. These results are stored and joined later if
    // there were
    // multiple search criteria.
    List<List<SearchResultResourceRep>> resRepLists = new ArrayList<List<SearchResultResourceRep>>();
    for (Map.Entry<String, List<String>> entry : parameters.entrySet()) {
        for (String searchValue : entry.getValue()) {
            SearchedResRepList resRepList = new SearchedResRepList(getResourceType());
            if (entry.getKey().equals(SEARCH_WWN)) {
                simpleSearch = true;
                String wwn = searchValue;
                _dbClient.queryByConstraint(AlternateIdConstraint.Factory.getVolumeWwnConstraint(wwn.toUpperCase()), resRepList);
            } else if (entry.getKey().equals(SEARCH_VARRAY)) {
                simpleSearch = true;
                String varrayId = searchValue;
                _dbClient.queryByConstraint(AlternateIdConstraint.Factory.getConstraint(Volume.class, "varray", varrayId), resRepList);
            } else if (entry.getKey().equals(SEARCH_PERSONALITY)) {
                simpleSearch = true;
                String personality = searchValue;
                // Validate the personality type
                boolean valid = false;
                for (PersonalityTypes personalityType : Volume.PersonalityTypes.values()) {
                    if (personalityType.toString().equals(personality)) {
                        valid = true;
                    }
                }
                if (!valid) {
                    throw APIException.badRequests.parameterForSearchHasInvalidSearchValueWithSuggestions(getResourceClass().getName(), entry.getKey(), personality, PersonalityTypes.values());
                }
                _dbClient.queryByConstraint(AlternateIdConstraint.Factory.getConstraint(Volume.class, "personality", personality), resRepList);
            }
            // Convert to a list; SearchedResRepList is immutable and not really made for what we're doing here.
            List<SearchResultResourceRep> repList = new ArrayList<SearchResultResourceRep>();
            if (resRepList.iterator() != null) {
                for (SearchResultResourceRep res : resRepList) {
                    repList.add(res);
                }
                resRepLists.add(repList);
            }
        }
    }
    // Now perform a "join" on the resRepList entries to create a single set of resources
    Set<SearchResultResourceRep> resRepSet = new HashSet<SearchResultResourceRep>();
    for (List<SearchResultResourceRep> resList : resRepLists) {
        for (SearchResultResourceRep res : resList) {
            resRepSet.add(res);
        }
    }
    // Remove entries that aren't in every collection
    for (List<SearchResultResourceRep> resList : resRepLists) {
        resRepSet.retainAll(resList);
    }
    // 
    // Non-Indexed (manual) query result business logic goes here, after we've already reduced the list
    // 
    boolean advancedQuery = false;
    if (parameters.containsKey(SEARCH_PROTECTION)) {
        // Prevent the expensive advanced query unless you see certain parameters
        advancedQuery = true;
    }
    // resRepSet
    if (advancedQuery) {
        // simple parameters, like personality=SOURCE to pre-fill a much smaller list of objects and avoid this.
        if (!simpleSearch) {
            List<URI> volumes = _dbClient.queryByType(Volume.class, true);
            for (URI volumeId : volumes) {
                RestLinkRep selfLink = new RestLinkRep("self", RestLinkFactory.newLink(ResourceTypeEnum.VOLUME, volumeId));
                resRepSet.add(new SearchResultResourceRep(volumeId, selfLink, null));
            }
            _log.warn(String.format("Performance of Volume search is poor when specifying only %s with no additional search parameters." + "Search performs faster when combined with other parameters such as %s, %s", SEARCH_PROTECTION, SEARCH_PERSONALITY, SEARCH_VARRAY));
        }
        List<SearchResultResourceRep> resToInclude = new ArrayList<SearchResultResourceRep>();
        for (SearchResultResourceRep res : resRepSet) {
            Volume volume = _dbClient.queryObject(Volume.class, res.getId());
            boolean personalityIsSource = volume.getPersonality() == null || volume.getPersonality().equalsIgnoreCase(Volume.PersonalityTypes.SOURCE.toString());
            boolean ha = volume.getAssociatedVolumes() != null && !volume.getAssociatedVolumes().isEmpty();
            boolean srdf = volume.getSrdfTargets() != null && !volume.getSrdfTargets().isEmpty();
            boolean rp = volume.getRpTargets() != null && !volume.getRpTargets().isEmpty();
            boolean isProtected = personalityIsSource && (ha || srdf || rp);
            boolean includeResource = true;
            for (Map.Entry<String, List<String>> entry : parameters.entrySet()) {
                for (String searchValue : entry.getValue()) {
                    if (entry.getKey().equals(SEARCH_PROTECTION)) {
                        // Validate the protection parameter
                        boolean valid = false;
                        String[] validProtection = { TRUE_STR, FALSE_STR, RP, SRDF, VPLEX, HA };
                        for (String validValue : validProtection) {
                            if (validValue.toString().equalsIgnoreCase(searchValue)) {
                                valid = true;
                            }
                        }
                        if (!valid) {
                            throw APIException.badRequests.parameterForSearchHasInvalidSearchValueWithSuggestions(getResourceClass().getName(), entry.getKey(), searchValue, validProtection);
                        }
                        if ((searchValue.equals(TRUE_STR) && !isProtected) || (searchValue.equals(FALSE_STR) && isProtected)) {
                            includeResource = false;
                        } else if (searchValue.equalsIgnoreCase(RP) && !rp) {
                            includeResource = false;
                        } else if ((searchValue.equalsIgnoreCase(VPLEX) || searchValue.equalsIgnoreCase(HA)) && !ha) {
                            includeResource = false;
                        } else if (searchValue.equalsIgnoreCase(SRDF) && !srdf) {
                            includeResource = false;
                        }
                    }
                }
            }
            if (includeResource) {
                resToInclude.add(res);
            }
        }
        // Reduce the set
        resRepSet.retainAll(resToInclude);
    }
    // Convert to a format consumable by our utilities
    List<SearchResultResourceRep> resRepList = new ArrayList<SearchResultResourceRep>();
    for (SearchResultResourceRep res : resRepSet) {
        resRepList.add(res);
    }
    if (!authorized) {
        Iterator<SearchResultResourceRep> _queryResultIterator = resRepList.iterator();
        ResRepFilter<SearchResultResourceRep> resrepFilter = (ResRepFilter<SearchResultResourceRep>) getPermissionFilter(getUserFromContext(), _permissionsHelper);
        SearchedResRepList filteredResRepList = new SearchedResRepList();
        filteredResRepList.setResult(new FilterIterator<SearchResultResourceRep>(_queryResultIterator, resrepFilter));
        result.setResource(filteredResRepList);
    } else {
        result.setResource(resRepList);
    }
    return result;
}
Also used : SearchResultResourceRep(com.emc.storageos.model.search.SearchResultResourceRep) ArrayList(java.util.ArrayList) RestLinkRep(com.emc.storageos.model.RestLinkRep) SearchedResRepList(com.emc.storageos.api.service.impl.response.SearchedResRepList) SearchResults(com.emc.storageos.model.search.SearchResults) URI(java.net.URI) NullColumnValueGetter.isNullURI(com.emc.storageos.db.client.util.NullColumnValueGetter.isNullURI) PersonalityTypes(com.emc.storageos.db.client.model.Volume.PersonalityTypes) MapVolume(com.emc.storageos.api.mapper.functions.MapVolume) Volume(com.emc.storageos.db.client.model.Volume) ITLRestRepList(com.emc.storageos.model.block.export.ITLRestRepList) VirtualPoolChangeList(com.emc.storageos.model.vpool.VirtualPoolChangeList) BlockSnapshotSessionList(com.emc.storageos.model.block.BlockSnapshotSessionList) ArrayList(java.util.ArrayList) TaskList(com.emc.storageos.model.TaskList) URIQueryResultList(com.emc.storageos.db.client.constraint.URIQueryResultList) List(java.util.List) NamedVolumesList(com.emc.storageos.model.block.NamedVolumesList) BulkList(com.emc.storageos.api.service.impl.response.BulkList) MigrationList(com.emc.storageos.model.block.MigrationList) SearchedResRepList(com.emc.storageos.api.service.impl.response.SearchedResRepList) MirrorList(com.emc.storageos.model.block.MirrorList) SnapshotList(com.emc.storageos.model.SnapshotList) ResRepFilter(com.emc.storageos.api.service.impl.response.ResRepFilter) ProjOwnedResRepFilter(com.emc.storageos.api.service.impl.response.ProjOwnedResRepFilter) Map(java.util.Map) HashMap(java.util.HashMap) StringMap(com.emc.storageos.db.client.model.StringMap) HashSet(java.util.HashSet)

Aggregations

ResRepFilter (com.emc.storageos.api.service.impl.response.ResRepFilter)5 SearchResultResourceRep (com.emc.storageos.model.search.SearchResultResourceRep)5 SearchResults (com.emc.storageos.model.search.SearchResults)5 List (java.util.List)4 BulkList (com.emc.storageos.api.service.impl.response.BulkList)3 SearchedResRepList (com.emc.storageos.api.service.impl.response.SearchedResRepList)3 RestLinkRep (com.emc.storageos.model.RestLinkRep)3 Map (java.util.Map)3 ITLRestRepList (com.emc.storageos.model.block.export.ITLRestRepList)2 StorageOSUser (com.emc.storageos.security.authentication.StorageOSUser)2 ArrayList (java.util.ArrayList)2 OrderMapper.toExecutionLogList (com.emc.sa.api.mapper.OrderMapper.toExecutionLogList)1 OrderMapper.toOrderLogList (com.emc.sa.api.mapper.OrderMapper.toOrderLogList)1 MapVolume (com.emc.storageos.api.mapper.functions.MapVolume)1 ProjOwnedResRepFilter (com.emc.storageos.api.service.impl.response.ProjOwnedResRepFilter)1 URIUtil.asString (com.emc.storageos.db.client.URIUtil.asString)1 NamedElementQueryResultList (com.emc.storageos.db.client.constraint.NamedElementQueryResultList)1 URIQueryResultList (com.emc.storageos.db.client.constraint.URIQueryResultList)1 StringMap (com.emc.storageos.db.client.model.StringMap)1 Volume (com.emc.storageos.db.client.model.Volume)1