🐳 Ocean DB driver interface(Python).
Project description
|banner|
.. raw:: html
<h1 align="center">
oceandb-driver-interface
.. raw:: html
</h1>
..
🐳 Ocean DB driver interface(Python).
.. |banner| image:: docs/imgs/repo-banner@2x.png
:target: https://oceanprotocol.com
.. image:: https://img.shields.io/pypi/v/oceandb-driver-interface.svg
:target: https://pypi.python.org/pypi/oceandb-driver-interface
.. image:: https://travis-ci.com/oceanprotocol/oceandb-driver-interface.svg?token=pA8zcB6SCxKW5MHpqs6L&branch=master
:target: https://travis-ci.com/oceanprotocol/oceandb-driver-interface
High-level, plugin-bound Ocean DB functions. You should implement a plugin class extending this module to connect with Ocean DB.
* Free software: Apache Software License 2.0
* Documentation: https://oceandb-plugin-system.readthedocs.io.
How to use it
-------------
Abstract interface for all persistence layer plugins.
Expects the following to be defined by the subclass:
* type - A string denoting the type of plugin (e.g. BigchainDB).
* write - Write an object in OceanDB
* read - Read the registry for a provided id
* update - Update an object in OceanDB
* delete - Delete the registry for a provided id
* list - List the elements saved in OceanDB
Once you have your plugin, the way to use it is the following:
You have to provide a configuration with the following information:
.. code-block:: python
[oceandb]
enabled=true # In order to enable or not the plugin
module=bigchaindb # You can use one the plugins already created. Currently we have mongodb and bigchaindb.
module.path= # You can specify the location of your custom plugin.
db.hostname=localhost # Address of your persistence.
db.port=9985 # Port of yout persistence database.
# If you choose bigchaindb you have to provide this:
secret= # A secret that serves as a seed.
db.namespace=namespace # Namespace that you are going to use in bigchaindb
db.app_id= # App id of your bigchaindb application.
db.app_key= # App key of your bigchaindb application.
# If you choose mongodb you have to provide this:
db.username=travis # If you are using authentication, mongodb username.
db.password=test # If you are using authentication, mongodb password.
db.name=test # Mongodb database name
db.collection=col # Mongodb collection name
..
Plugins availables
------------------
At the moment we have developed two plugins:
* Bigchaindb (https://github.com/oceanprotocol/oceandb-bigchaindb-driver)
* Mongodb (https://github.com/oceanprotocol/oceandb-mongodb-driver)
How to develop a plugin
-----------------------
To create a plugin you have to create a class called Plugin extending AbstractPlugin.
You could find an example in https://github.com/oceanprotocol/oceandb-bigchaindb-driver
.. raw:: html
<h1 align="center">
oceandb-driver-interface
.. raw:: html
</h1>
..
🐳 Ocean DB driver interface(Python).
.. |banner| image:: docs/imgs/repo-banner@2x.png
:target: https://oceanprotocol.com
.. image:: https://img.shields.io/pypi/v/oceandb-driver-interface.svg
:target: https://pypi.python.org/pypi/oceandb-driver-interface
.. image:: https://travis-ci.com/oceanprotocol/oceandb-driver-interface.svg?token=pA8zcB6SCxKW5MHpqs6L&branch=master
:target: https://travis-ci.com/oceanprotocol/oceandb-driver-interface
High-level, plugin-bound Ocean DB functions. You should implement a plugin class extending this module to connect with Ocean DB.
* Free software: Apache Software License 2.0
* Documentation: https://oceandb-plugin-system.readthedocs.io.
How to use it
-------------
Abstract interface for all persistence layer plugins.
Expects the following to be defined by the subclass:
* type - A string denoting the type of plugin (e.g. BigchainDB).
* write - Write an object in OceanDB
* read - Read the registry for a provided id
* update - Update an object in OceanDB
* delete - Delete the registry for a provided id
* list - List the elements saved in OceanDB
Once you have your plugin, the way to use it is the following:
You have to provide a configuration with the following information:
.. code-block:: python
[oceandb]
enabled=true # In order to enable or not the plugin
module=bigchaindb # You can use one the plugins already created. Currently we have mongodb and bigchaindb.
module.path= # You can specify the location of your custom plugin.
db.hostname=localhost # Address of your persistence.
db.port=9985 # Port of yout persistence database.
# If you choose bigchaindb you have to provide this:
secret= # A secret that serves as a seed.
db.namespace=namespace # Namespace that you are going to use in bigchaindb
db.app_id= # App id of your bigchaindb application.
db.app_key= # App key of your bigchaindb application.
# If you choose mongodb you have to provide this:
db.username=travis # If you are using authentication, mongodb username.
db.password=test # If you are using authentication, mongodb password.
db.name=test # Mongodb database name
db.collection=col # Mongodb collection name
..
Plugins availables
------------------
At the moment we have developed two plugins:
* Bigchaindb (https://github.com/oceanprotocol/oceandb-bigchaindb-driver)
* Mongodb (https://github.com/oceanprotocol/oceandb-mongodb-driver)
How to develop a plugin
-----------------------
To create a plugin you have to create a class called Plugin extending AbstractPlugin.
You could find an example in https://github.com/oceanprotocol/oceandb-bigchaindb-driver
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
Close
Hashes for oceandb_driver_interface-0.0.6-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 878f01716c1efdfae8a15682843b4c3797a4692fb37d333b24f8b94c6bf3a3c7 |
|
MD5 | b1e6877a1774e0090a975c3edd171b9a |
|
BLAKE2b-256 | 9c74821d80310a30f72c42c339eecaae619bae402f426f4db699e9ac45e3a94e |