Skip to main content

E-Deposit AMQP module providing communication with Aleph

Project description

Introduction

This package provides an AMQP middle-ware for communication with Aleph. Aleph is a system used in libraries to store meta-data about books and authors.

Full module documentation is hosted at the ReadTheDocs.

Installation

Module is hosted at PYPI, and can be easily installed using PIP:

pip install edeposit.amqp.aleph

Source codes can be found at GitHub: https://github.com/jstavel/edeposit.amqp.aleph.

Content

Module provides several submodules:

edeposit.amqp.aleph.__init__

Data structures for (generic, not just AMQP) communication. It contains reaction function reactToAMQPMessage(), which detects what (serialized) structure was given to her, do some low-level interactions with Aleph and returns result structures.

Module provides also serialize/deserialze functions for generic python namedtuple structures.

edeposit.amqp.aleph.aleph

Used for raw communication with Aleph server. Communication is read-only and uses special API provided by Aleph X-Services module.

Can be queried using reactToAMQPMessage() defined in __init__.

edeposit.amqp.aleph.marcxml

MARC XML (de)serialization class, which provides some higher-level bindings to MARC records.

edeposit.amqp.aleph.convertor

Convertor from MARC XML records to Epublication structures defined in __init__.

edeposit.amqp.aleph.isbn

ISBN checksum validator.

Can be queried using reactToAMQPMessage() defined in __init__.

Acceptance tests

Robot Framework is used to test the sources, which are stored in src/edeposit/amqp/aleph/tests directory.

You can run them manually (from the root of the package):

$ pybot -W 80 --pythonpath src/edeposit/amqp/aleph/tests/:src src/edeposit/amqp/aleph/tests/

Or continuously using nosier:

$ nosier -p src -b 'export' "pybot -W 80 --pythonpath src/edeposit/amqp/aleph/tests/ --pythonpath src src/edeposit/amqp/aleph/tests/"

Status of acceptance tests

You can see the results of the tests here:

http://edeposit-amqp-aleph.readthedocs.org/cs/latest/_downloads/log.html

http://edeposit-amqp-aleph.readthedocs.org/cs/latest/_downloads/report.html

Results are currently (12.03.2014) outdated, but some form of continuous integration framework will be used in the future.

Contributors

Changelog

1.4.1

  • Version of package and documentation is now automatically parsed from this file.

1.4.0

  • API change in reactToAMQPmessage(), which now takes just two parameters and returns values, instead of calling callbacks.

  • Documentation updated and made useful.

1.3.0

  • Serializers removed from convertors.py. (De)serialization will be handled in edeposit.amqp, because other packages also uses it.

1.2.5

  • Fixed bug with package installation, when the package couldn’t find README.rst.

1.2.4

  • Documentation is now even for settings.py’s attributes.

  • User defined JSON configuration is now supported.

1.2.3

  • Documentation is now generated automatically everytime the package is generated.

1.2.2

  • Tests and HTML help is now included in PYPI package.

1.2.1

  • All source files are now documented with google style docstrings.

1.2.0

  • Added experimental export support.

1.1.0

  • Project released at PYPI.

1.0 (unreleased)

  • Communication with Aleph is now working.

0.1-dev (unreleased)

  • Package created using templer.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

edeposit.amqp.aleph-1.4.1.tar.gz (349.1 kB view details)

Uploaded Source

File details

Details for the file edeposit.amqp.aleph-1.4.1.tar.gz.

File metadata

File hashes

Hashes for edeposit.amqp.aleph-1.4.1.tar.gz
Algorithm Hash digest
SHA256 298954a3758d12f22a42423462c5be1cb9239de881d09d1bf7e527520c0a7e47
MD5 874cb125261c394f66b22a0765c2d75c
BLAKE2b-256 66ea6224cb68d945237a6b4cd5ce602ea36cfd53650a9d76a7c2e05ed7b26456

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page