[ https://jira.duraspace.org/browse/DS-829?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=20366#action_20366 ]
Robin Taylor commented on DS-829: --------------------------------- Just a wee comment about where we do the filtering. This module would do the filtering on the result set returned by Harvest.harvest(..). The problem with that is that the administrator may have specified that a partial response should contain 100 records, if we filter out records after creating the result set of 100 records we have to take some corrective action to bring the total number back up to 100. The code appears to achieve this by a recursive call to Harvest.harvest(..). Would it not be better to filter out unwanted items whilst creating the result set ? So the filtering would take place in Harvest.harvest(..) ? There is already some filtering done there, depending on configuration both withdrawn items and items with restricted visibility can be excluded from the result set. The calling code could pass an array of filters as part of the call which Harvest could use to exclude items. So in Harvest.harvest... (* Apologies for the pseudo code *) Read database Apply filters If not required then go back and read another item else add to result set > OAI Extended Addon : Adding filter and modifying capacities to the OAI > interface > -------------------------------------------------------------------------------- > > Key: DS-829 > URL: https://jira.duraspace.org/browse/DS-829 > Project: DSpace > Issue Type: New Feature > Components: OAI-PMH > Reporter: João Melo > Assignee: Robin Taylor > Fix For: 1.8.0 > > Attachments: OAIExtended-v2.2.tar.gz, > OAIExtended_v2.1_with_documentation.tar.gz > > > Purpose > The OAI Extended Addon was initially developed to allow DSpace to be > compliant with the Driver project guidelines > (http://www.driver-repository.eu). > How it works? > When an OAI-PMH request is received, the DSpace database is queried through > the standard OAI Interface included in DSpace. After that, the OAI Extended > Addon starts to work. First, the list of items retrieved from the database is > filtered by a Filter Mechanism, after that, each item associated metadata is > modified by a Modifier Mechanism. The results of both actions are returned to > the harvester that performed the request. > Because of the initial purpose, most of the filters and modifiers implemented > are specific to the Driver compliance issue. But there is an easy way to > develop your own filters and/or modifiers, just by extending the abstract > class Filter and/or Modifier. More information is included in the attachment. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: https://jira.duraspace.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira ------------------------------------------------------------------------------ What Every C/C++ and Fortran developer Should Know! Read this article and learn how Intel has extended the reach of its next-generation tools to help Windows* and Linux* C/C++ and Fortran developers boost performance applications - including clusters. http://p.sf.net/sfu/intel-dev2devmay _______________________________________________ Dspace-devel mailing list Dspace-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dspace-devel