wiki:ComponentRegistryAndEditor

Version 25 (modified by twagoo, 10 years ago) (diff)

added geogeo as developer

Project: Component Registry

The Component Registry stores CMDI metadata components and profiles and offers a service to list and retrieve them. The BrowserGui is a web application displaying available components in the component registry in the correct context: application domain, creator, creation date, version, etc. The registry offers a hierarchical structure for browsing the components.

The Component Registry has means to keep itself coherent and consistent: check all offered components and keep an administration of the added and removed components. All components get a unique identifier wherewith other applications can identify it to the registry.

Components and profiles are specified and stored in a format specified by the general component schema. The registry offers profile schema's in the XSD format, which get generated from the profile specifications on the fly using the comp2schema XSLT.


Subpages

Contents

  1. Project: Component Registry
    1. Subpages
    2. Contents
    3. People
    4. Getting code
    5. System Requirements
    6. Building and Deploying
      1. Building
      2. Deployment
      3. Dependencies
    7. Management
      1. Administration interface
      2. Managing user groups
    8. Design
    9. Tickets
    10. History
      1. Historical pages


People

  • Project owner: Twan Goosen
  • Developer: George Georgovassilis
  • Developer: Olha Shkaravska

People who have worked on the Component Registry and Editor in the past:

  • Patrick Duin (original developer)
  • Jean-Charles Ferrières

Getting code

The source is available from the Clarin SVN repository (ComponentRegistry/trunk).


System Requirements

To serve:

  • Java 1.6
  • Tomcat 6
  • PostgreSQL server

To run the Flex client:

  • Web browser
  • Adobe Flash Player

To build:

  • Java 1.6
  • Maven 2
  • Flex SDK 3.6

Building and Deploying

For specific information about building and deploying the separate modules, see their respective pages:

Building

There is a modular Maven project (pom) that contains both the REST service and the Flex UI.

Deployment

To deploy the REST service including the Flex UI and its HTML wrapper, deploy the build output (WAR file) of the REST service to a Tomcat instance.

For details, see deploying Component Registry REST service.

Currently Deployed Locations

Dependencies

Internal dependency: the REST service depends on the Flex UI because it contains an html wrapper for the SWF.

External dependencies: see REST service dependencies.

The Component Registry as a whole also depends on the metadata toolkit, specifically the general component schema and the comp2schema XSLT.

Management

Administration interface

An administration interface that allows for inspection and modification of all public and private components is available at the path /admin.

E.g. for production: http://catalog.clarin.eu/ds/ComponentRegistry/admin].

Which accounts have administration rights is configured in the context parameter eu.clarin.cmdi.componentregistry.adminUsers.

Managing user groups

As of version 1.14.0 of the Component Registry, group functionality is available. Groups can be managed through a JMX interface as described in ComponentRegistryAndEditor/ManagingGroups.


Design

For design details of the modules of this project, see their respective pages:

There is a description of the high level architecture (picture below).

High level overview of Component Registry


Tickets

List of all open tickets for this project:

Ticket Summary Priority Owner Reporter
#130 Importing component/profile should strip out components with componentId attributes. major Twan Goosen patdui
#155 error message when not enough attributes to login major Twan Goosen dietuyt
#164 Copy data category properties into component/element major Twan Goosen twagoo
#186 Transfer ownership of components major Dieter Van Uytvanck twagoo
#379 Throw exceptions from update method of ComponentRegistry interface major Twan Goosen twagoo
#428 Examine why ConcurrentRestServiceTest does not fail major Twan Goosen George.Georgovassilis@mpi.nl
#735 Data category should be searchable in the CCR major menzo.windhouwer@di.huc.knaw.nl Jörg Knappen
#147 Add a parameter to link to the components/profiles tab minor Twan Goosen dietuyt
#221 add a favicon for the component registry minor Twan Goosen dietuyt


History

The Component Registry has been developed as part of the CLARIN project.

People who have worked on this project include Patrick Duin (original author), Twan Goosen and Jean-Charles Ferrières.

The original implementation of the backend (REST service) was using file system storage for the users and their registries. As of ComponentRegistry-1.8 this was replaced by a database based implementation. The code still reflects the original, more hierarchical storage model (e.g. a registry per user even though all components are stored in the same table).

For a detailed version history, see the changelog.

Historical pages