Git Product home page Git Product logo

momcapi-java's Introduction

MOM-CA API

This is an API to access and modify the data in a MOM-CA Database.

Usage

  1. Create a connection.properties file on classpath with the following properties:
    connectionType=exist
    connectionUrl=xmldb:exist://[momca-url]/xmlrpc
    user=admin
    password=[momca-password]
  1. Get a connection factory and momca connection:
MomcaConnectionFactory factory = new MomcaConnectionFactory();
MomcaConnection momca = factory.getMomcaConnection();
  1. Use the various manager classes, e.g. CharterManager, provided by MomcaConnection to access and modify data:
CharterManager cm = momca.getCharterManager();
  1. Do something with it. For instance, the following snippet gets a list of the ids of the charters of a specific fond:
List<IdCharter> charterIds = cm.list(new IdFond("AT-StiASei", "SeitenstettenOSB"))

Tests

To run the unit tests, a new MOM-CA instance must be created and the backup data in /src/test/resources/test_database_backup.zip needs to be restored.

Features

Momcapi is not yet feature complete in regards of all features of MOM-CA. The following functionalities are available:

User manager

  • List all users
  • Get specific user from the database
  • Add new user
  • Delete existing user
  • Change moderator
  • Change password
  • Initialize user (for instance if the user didn't get the confirmation link after sign-up

Country manager

  • List all countries (used in archival fonds and collections)
  • Get specific country from the database
  • Add new country to static hierarchy (used for archival fonds)
  • Add new region to hierarchical countries
  • Delete countries from the hierarchy
  • Delete regions from hierarchical countries

Archive manager

  • List all archives
  • List all archives belonging to a specific country
  • List all archvies belonging to a specific region
  • Get specific archive from the database
  • Get archive metadata (e.g. country, address, logo Url)
  • Add new archive
  • Delete archive

Fond manager

  • List all fonds belonging to a specific archive
  • Get specific fond from the database
  • Add new fond
  • Delete fond

Collection manager

  • List all collections
  • List all collections belonging to a specific country
  • List all collections belonging to a specific region
  • Get a specific collection from the database
  • Add new collection
  • Delete collection

Charter Manager

  • List all charter instances (imported, private, public and saved) for fonds, collections, mycollections and users
  • Get all instances (imported, private, public and saved) of a charter from the database
  • Get specific charter instance, e.g. saved from the database
  • Get charter medadata like the list of all figures
  • Check if charter is a valid CEI document and list the validation problems if it's not

momcapi-java's People

Contributors

yngwi avatar

Watchers

 avatar James Cloos avatar  avatar Stephan M avatar ICARUS Admin avatar

Forkers

stephanma

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.