No commit activity in last 3 years
No release in over 3 years
REQUIRES FCREPO 3.4+
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

>= 1.0.14
>= 0

Runtime

>= 0
 Project Readme

Fedora Akubra Mappers

A set of additional Akubra mappers

Fedora Pairtree Akubra Mapper

Fedora Pairtree Akubra Mapper will store objects (and datastreams) in a unified Pairtree-like tree with a BagIt-like object.

Setup

  1. Copy lib/pairtree-1.1.1.jar and fedora_akubra_mappers-0.0.1.jar to CATALINA_HOME/webapps/fedora/WEB-INF/lib (or some other path in Fedora's class path). The other JAR files in ./lib are only for testing purposes.

  2. Update your akubra-llstore.xml to use the info.cbeer.fcrepo.PairtreeObjectMapper and info.cbeer.fcrepo.PairtreeDatastreamMapper classes (e.g. akubra-llstore.example.xml)

  3. Load objects into Fedora

Usage

Fedora Pairtree Akubra Mapper will store objects ( and datastreams) in a Pairtree-like tree with a BagIt-like object, e.g.:

- pairtree_root/
   * ab/
     * cd/
       * abcd/
         * object.xml (FOXML-serialized object representation)
         * data/
             * MyDatastream.0 (Content for managed datastream `MyDatastream` version 0) 
             * MyDatastream.1 (Content for managed datastream `MyDatastream` version 1) 

TODO

Because the FOXML-serialized data is stored in object.xml, when an object is deleted, the directory structure is preserved. Ideally, Fedora could clean up empty directory trees.

Object and Datastream stores are configured independently. It might be possible to unify the pairtree configuration.

Fedora Timestamp Formatter Mapper

Usage

Fedora Timestamp Formatter Mapper will store objects using a Formatted timestamp. The timestamp pattern is defined in your akubra-llstore.xml configuration.

For example, if your akubra-llstore.xml was configured with:

   <bean name="fsObjectStoreMapper"
        class="info.cbeer.fcrepo.TimestampFormatterMapper"
         singleton="true">
    <constructor-arg value="%1$tY/%1$tm/%1$td"/>
   </bean>

Your objectStore would look like:

- objectStore/
  * 2010/
  * 2011/
    * 11/
    * 12/
      * 01/
        * info%3Afedora%2Ens%3Aid (FOXML-serialized object representation)
      * 15/

The constructor-arg is a format string, with the first argument as a calendar instance and the second the object identifier.