CollectionDao extends HibernateDao<Collection, String> { @SuppressWarnings ("unchecked") public List<String> getAuthorizedCollections (String user_uuid) { String restiction_query = " c WHERE ('" + user_uuid + "' in elements(c.authorizedUsers) OR '" + userDao.getPublicData ().getUUID () + "' in elements(c.authorizedUsers))"; if (cfgManager.isDataPublic ()) restiction_query = ""; return (List<String>) find ("select uuid FROM " + entityClass.getName () + restiction_query); }  int count(User user); @Override void delete(final Collection collection); @Override void deleteAll(); Collection create(Collection collection, User user); boolean contains(final String cid, final Long pid); void removeProduct(final String cid, final Long pid, User user); void removeProducts(final String cid, final Long[] pids, User user); @SuppressWarnings ("unchecked") List<Collection> getCollectionsOfProduct(final Long product_id); List<Long> getProductIds(final String collection_uuid, User user); @SuppressWarnings ("unchecked") List<String> getAuthorizedCollections(String user_uuid); @SuppressWarnings ("unchecked") List<User> getAuthorizedUsers(final Collection collection); String getCollectionUUIDByName(final String collection_name); boolean hasAccessToCollection(final String cid, final String uid); Iterator<Collection> getAllCollections(); final static String HIDDEN_PREFIX; final static String COLLECTION_ROOT_NAME; }
@Test public void getAuthorizedCollections () { String userId = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa3"; List<String> collections = dao.getAuthorizedCollections (userId); Assert.assertNotNull (collections); Assert.assertEquals (collections.size (), 2); Assert.assertTrue (collections.contains ("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4")); Assert.assertTrue (collections.contains ("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa5")); }