fcrepo-fedora3-federation

A package of federation connectors that can be used to project over fedora 3 content.

Лицензия

Лицензия

Группа

Группа

org.fcrepo
Идентификатор

Идентификатор

fcrepo-fedora3-federation
Последняя версия

Последняя версия

4.0.0-alpha-2
Дата

Дата

Тип

Тип

pom
Описание

Описание

fcrepo-fedora3-federation
A package of federation connectors that can be used to project over fedora 3 content.
Организация-разработчик

Организация-разработчик

DuraSpace, Inc.
Система контроля версий

Система контроля версий

https://github.com/futures/fcrepo-fedora3-federation-connector

Скачать fcrepo-fedora3-federation

Имя Файла Размер
fcrepo-fedora3-federation-4.0.0-alpha-2.pom 1 KB
Обзор

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/org.fcrepo/fcrepo-fedora3-federation/ -->
<dependency>
    <groupId>org.fcrepo</groupId>
    <artifactId>fcrepo-fedora3-federation</artifactId>
    <version>4.0.0-alpha-2</version>
    <type>pom</type>
</dependency>
// https://jarcasting.com/artifacts/org.fcrepo/fcrepo-fedora3-federation/
implementation 'org.fcrepo:fcrepo-fedora3-federation:4.0.0-alpha-2'
// https://jarcasting.com/artifacts/org.fcrepo/fcrepo-fedora3-federation/
implementation ("org.fcrepo:fcrepo-fedora3-federation:4.0.0-alpha-2")
'org.fcrepo:fcrepo-fedora3-federation:pom:4.0.0-alpha-2'
<dependency org="org.fcrepo" name="fcrepo-fedora3-federation" rev="4.0.0-alpha-2">
  <artifact name="fcrepo-fedora3-federation" type="pom" />
</dependency>
@Grapes(
@Grab(group='org.fcrepo', module='fcrepo-fedora3-federation', version='4.0.0-alpha-2')
)
libraryDependencies += "org.fcrepo" % "fcrepo-fedora3-federation" % "4.0.0-alpha-2"
[org.fcrepo/fcrepo-fedora3-federation "4.0.0-alpha-2"]

Зависимости

test (2)

Идентификатор библиотеки Тип Версия
org.powermock : powermock-module-junit4 jar 1.5.1
org.powermock : powermock-api-mockito jar 1.5.1

Модули Проекта

  • local-legacy-fedora3
  • fcrepo-fedora3-federation-connector

Fedora 3 Federation Connector

This fedoration connector allows exposure of fedora 3 content in a running fedora 3 repository to appear within a fedora 4 repository. To use this code, you'd need to have access to a fedora 3 repository.

Configuration requirements

  1. Fedora 3 repository must be accessible through the REST API
  2. Adminsitrative credentials must be provided that expose access to ALL content
  3. The resource index must be enabled
  4. The repository is expected to be unchanging while exposed through Fedora 4

Organization

This module has 2 sub-modules.

local-legacy-fedora3

A sub module that builds jar file of a build of fedora 3 for use in cargo to support integration testing.

fcrepo-fedora3-federation-connector

A federation connector with unit and integration tests rigging to expose fedora 3 conent in a fedora 4 repository.

Design Documentation

Fetching the source code

$ git clone https://github.com/futures/fcrepo-fedora3-federation-connector

Update build configuration to include new module

The following steps reference a fcrepo4 source tree. You can fetch this from https://github.com/futures/fcrepo4.

In fcrepo4/fcrepo-webapp/pom.xml add

<dependency>
  <groupId>org.fcrepo</groupId>
  <artifactId>fcrepo-fedora3-federation-connector</artifactId>
  <version>${project.version}</version>
  <exclusions>
    <exclusion>
      <groupId>com.hp.hpl.jena</groupId>
      <artifactId>jena</artifactId>
    </exclusion>
  </exclusions>
</dependency>

In the json file referenced in fcrepo4/fcrepo-webapp/src/main/resources/spring/repo.xml, (which at the time of this writing is fcrepo4/fcrepo-jcr/src/main/resources/config/rest-sessions/repository.json add

"externalSources" : {
  "fedora3" : {
     "classname" : "org.fcrepo.connector.fedora3.Fedora3FederationConnector",
     "projections" : [ "default:/f3 => /" ],
     "fedoraUrl" : "http://localhost-or-wherever-your-fedora3-is/fedora",
     "username" : "your-fedora-username",
     "password" : "your-fedora-password",
     "organizer" : {
        "classname" : "org.fcrepo.connector.fedora3.organizers.GroupingOrganizer",
        "maxContainerSize": 4
     }

  }
}

Note: the "organizer" is configurable. The GroupingOrganizer specified above groups pids hierarchically guaranteeing that no group contains more than the number specified in "maxContainerSize". A large size will result in longer load times per level in the hierarchy while a small size will require navigation through more layers to find a particular object.

Compile and install the code

For this project, then each of the components modified above:

$ mvn clean install -DskipTests -DskipCargo

Within fcrepo-webapp:

$ mvn jetty:run

You can see the federation over your fedora 3 content at http://localhost:8080/rest/f3

Caveats

  • versions are not presented
org.fcrepo

Fedora Futures

Версии библиотеки

Версия
4.0.0-alpha-2