private List<ScopedFilter> getScopedFilters(XOAIContext context, String metadataPrefix) throws CannotDisseminateFormatException { List<ScopedFilter> filters = new ArrayList<ScopedFilter>(); if (context.hasCondition()) filters.add(new ScopedFilter(context.getCondition(), Context)); MetadataFormat metadataFormat = context.getFormatByPrefix(metadataPrefix); if (metadataFormat.hasCondition()) filters.add(new ScopedFilter(metadataFormat.getCondition(), MetadataFormat)); return filters; }
public ListItemsResults getItems( XOAIContext context, int offset, int length, String metadataPrefix, String setSpec, Date from) throws CannotDisseminateFormatException, OAIException { List<ScopedFilter> filters = getScopedFilters(context, metadataPrefix); if (context.isStaticSet(setSpec)) { if (context.getSetFilter(setSpec) != null) filters.add(new ScopedFilter(context.getSetFilter(setSpec), Scope.Set)); return itemRepository.getItems(filters, offset, length, from); } else return itemRepository.getItems(filters, offset, length, setSpec, from); }