Usability Improvements to Curation System -----------------------------------------
Key: DS-982 URL: https://jira.duraspace.org/browse/DS-982 Project: DSpace Issue Type: Improvement Components: DSpace API Affects Versions: 1.8.0 Reporter: Richard Rodgers A small number of extensions to curation system to improve task authoring and curation end-user experience. No API or other breaking changes. Patches forthcoming, but brief write-up follows: (1) Admin UI - ability to cluster curation tasks into groups for display and selection. The UI code will be adapted to look for and recognize a set of properties that permit grouping of tasks. Groups can be defined for any purpose, and are optional. If no groups are defined, the behavior in the UI is as present: all tasks that have been mapped by the ui.tasknames property will appear in a single drop-down list. If any group is defined, then the UI will display *only* tasks associated with defined groups. A task may belong to several groups, and there may be any number of groups. This will give administrators the ability to logically and cleanly present tasks: the UI will first display a set of groups, then when selected, the tasks in that group. New properties: ui.groupnames = firstgroup = "A sensible collection of tasks", secondgroup = "Metadata checking tools" the right hand side customizable phrase will appear in the UI. ui.group.firstgroup = task1, task2,,,, ui.group.secondgroup = task3, task4... these properties will define the members of the group (2) Scriptable tasks. Support will be added for authoring tasks in non-java languages, specifically those accessible via JSR223 - the Java Scripting API. Note that these languages are *not* installed in DSpace by default, and must be for the scripting engine to operate. Support for any specific language is not included with this extension. (3) Flexible, hierarchical, task configuration. This facility provides tasks with a convenient way to manage their configuration data. It is an optional feature, and tasks are not required to utilize it, but it is available in the AbstractCurationTask class as a set of convenience methods, so tasks extending this class can use if desired. The method 'taskProperty(String name)' when invoked by a task named "mytask.prof1" will return a value (if any) as follows: if there is a file config/modules/mytask.cfg, this is loaded into a property set. if there is a file confi/modules/mytask.prof1.cfg, this is loaded into the same property set, supplementing or overriding the properties in 'mytask.cfg' the value associated with 'name' is returned to caller. Using task properties, task authors can create multiple 'profiles' of the same task (one which forces an update perhaps, one which doesn't), can factor out common properties, and many other uses. This can greatly diminish the amount of java coding required to support tasks. It relies on the convention that the same task code can have multiple task names. -- 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 ------------------------------------------------------------------------------ BlackBerry® DevCon Americas, Oct. 18-20, San Francisco, CA The must-attend event for mobile developers. Connect with experts. Get tools for creating Super Apps. See the latest technologies. Sessions, hands-on labs, demos & much more. Register early & save! http://p.sf.net/sfu/rim-blackberry-1 _______________________________________________ Dspace-devel mailing list Dspace-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dspace-devel