Criteria c = HierarchyMapper.buildICGHierarchyCriteria(ids);
UserCredentials uc = (UserCredentials) registry.lookup(LookupNames.USER_CREDENTIALS); Criteria c = HierarchyMapper.buildICGHierarchyCriteria(ids, uc.getUserID());
    public Object[] retrieveICGHierarchy(List imageSummaries)        throws DSOutOfServiceException, DSAccessException    {        if (imageSummaries == null)            throw new NullPointerException("List of imageSummaries " +                    "cannot be null");        if (imageSummaries.size() == 0)            throw new IllegalArgumentException("List of imageSummaries " +                    "cannot be of length 0");        Iterator i = imageSummaries.iterator();        ImageSummary is;        Map map = new HashMap();        List ids = new ArrayList();        Integer id;        while (i.hasNext()) {            is = (ImageSummary) i.next();            id = new Integer(is.getID());            map.put(id, is);            ids.add(id);        }        Criteria c = HierarchyMapper.buildICGHierarchyCriteria(ids);        List classifications =             (List) gateway.retrieveListSTSData("Classification", c);                if (classifications == null) return null;        UserCredentials uc = (UserCredentials)                        registry.lookup(LookupNames.USER_CREDENTIALS);                return HierarchyMapper.fillICGHierarchy(classifications, map,                                                 uc.getUserID());                                }