etpclient


Nameetpclient JSON
Version 0.0.3 PyPI version JSON
download
home_pagehttp://www.geosiris.com
SummaryETP client
upload_time2023-11-03 00:06:00
maintainerValentin Gauthier
docs_urlNone
authorValentin Gauthier
requires_python>=3.9,<4.0
licenseApache-2.0
keywords etp
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <!--
Copyright (c) 2022-2023 Geosiris.
SPDX-License-Identifier: Apache-2.0
-->
# Etpclient
==========


[![License](https://img.shields.io/pypi/l/etpclient)](https://github.com/geosiris-technologies/etpclient-python/blob/main/LICENSE)
[![Documentation Status](https://readthedocs.org/projects/etpclient-python/badge/?version=latest)](https://etpclient-python.readthedocs.io/en/latest/?badge=latest)
[![Python CI](https://github.com/geosiris-technologies/etpclient-python/actions/workflows/ci-tests.yml/badge.svg)](https://github.com/geosiris-technologies/etpclient-python/actions/workflows/ci-tests.yml)
![Python version](https://img.shields.io/pypi/pyversions/etpclient)
[![PyPI](https://img.shields.io/pypi/v/etpclient)](https://badge.fury.io/py/etpclient)
![Status](https://img.shields.io/pypi/status/etpclient)
[![codecov](https://codecov.io/gh/geosiris-technologies/etpclient-python/branch/main/graph/badge.svg)](https://codecov.io/gh/geosiris-technologies/etpclient-python)


## Installation : 

Poetry is required to use the client. [Poetry documentation](https://python-poetry.org/docs/)

```bash
poetry update
poetry install
```

## Sample commands :

```bash
poetry run python client --host RDDMS_HOST --port 9002 -t MY_TOKEN

poetry run python client --host MY_HOST --port 80 --sub-path etp -t MY_TOKEN

poetry run python client --host 127.0.0.1 --port 17000 --sub-path etp --username login --password passwordTest

poetry run python client --host 127.0.0.1 --port 5432 --username testerlogin --password passwordtester
```


## ETP supported commands : 

When the client is connected you can send your request.

This is the help menu :
```bash
[XXX] : replace XXX with your value
[XXX=Y] : replace XXX with your value, default is Y
[[XXX]] : optional parameter

Help : show this menu

Quit : hard quit (no CloseSession sent)
CloseSession : close this session

GetDataArrayMetadata  [URI] [PATH_IN_RESOURCE]
GetDataArray          [URI] [PATH_IN_RESOURCE]
GetDataSubArray       [URI] [PATH_IN_RESOURCE] [START] [COUNT]
PutDataArray          [[UUIDS]]* [DATASPACE_NAME] [EPC_FILE_PATH] [H5_FILE_PATH]

GetDataObject         [URI_1] [...] [URI_N]
PutDataObject         [FILE_PATH] [[DATASPACE_NAME]]
GetResources          [[uri=eml:/// or notUri=DataspaceName]] [[depth=1]] [[SCOPE]]

GetDataspaces
PutDataspace          [NAME]
DeleteDataspace       [NAME]
```

## Configuration

It is possible to change the "capabilities" of your client in the prefilled RequestSession object in [etpclient/etp/requester.py](https://github.com/geosiris-technologies/etpclient-python/blob/main/etpclient/etp/requester.py#L180)

To add/remove supported protocols and request, modify the file [etpclient/etp/serverprotocols.py](https://github.com/geosiris-technologies/etpclient-python/blob/main/etpclient/etp/serverprotocols.py#L166). Do not forget to decorate your protocols to allow the class ETPConnection to use your protocol.
Example : 
```python
@ETPConnection.on(CommunicationProtocol.CORE)
class myCoreProtocol(CoreHandler):
    ...
```
            

Raw data

            {
    "_id": null,
    "home_page": "http://www.geosiris.com",
    "name": "etpclient",
    "maintainer": "Valentin Gauthier",
    "docs_url": null,
    "requires_python": ">=3.9,<4.0",
    "maintainer_email": "valentin.gauthier@geosiris.com",
    "keywords": "ETP",
    "author": "Valentin Gauthier",
    "author_email": "valentin.gauthier@geosiris.com",
    "download_url": "https://files.pythonhosted.org/packages/64/c3/9fc595e5f0dc062dc0d004f7dd4ea67692e40e2409fb121c4fa413f079dc/etpclient-0.0.3.tar.gz",
    "platform": null,
    "description": "<!--\nCopyright (c) 2022-2023 Geosiris.\nSPDX-License-Identifier: Apache-2.0\n-->\n# Etpclient\n==========\n\n\n[![License](https://img.shields.io/pypi/l/etpclient)](https://github.com/geosiris-technologies/etpclient-python/blob/main/LICENSE)\n[![Documentation Status](https://readthedocs.org/projects/etpclient-python/badge/?version=latest)](https://etpclient-python.readthedocs.io/en/latest/?badge=latest)\n[![Python CI](https://github.com/geosiris-technologies/etpclient-python/actions/workflows/ci-tests.yml/badge.svg)](https://github.com/geosiris-technologies/etpclient-python/actions/workflows/ci-tests.yml)\n![Python version](https://img.shields.io/pypi/pyversions/etpclient)\n[![PyPI](https://img.shields.io/pypi/v/etpclient)](https://badge.fury.io/py/etpclient)\n![Status](https://img.shields.io/pypi/status/etpclient)\n[![codecov](https://codecov.io/gh/geosiris-technologies/etpclient-python/branch/main/graph/badge.svg)](https://codecov.io/gh/geosiris-technologies/etpclient-python)\n\n\n## Installation : \n\nPoetry is required to use the client. [Poetry documentation](https://python-poetry.org/docs/)\n\n```bash\npoetry update\npoetry install\n```\n\n## Sample commands :\n\n```bash\npoetry run python client --host RDDMS_HOST --port 9002 -t MY_TOKEN\n\npoetry run python client --host MY_HOST --port 80 --sub-path etp -t MY_TOKEN\n\npoetry run python client --host 127.0.0.1 --port 17000 --sub-path etp --username login --password passwordTest\n\npoetry run python client --host 127.0.0.1 --port 5432 --username testerlogin --password passwordtester\n```\n\n\n## ETP supported commands : \n\nWhen the client is connected you can send your request.\n\nThis is the help menu :\n```bash\n[XXX] : replace XXX with your value\n[XXX=Y] : replace XXX with your value, default is Y\n[[XXX]] : optional parameter\n\nHelp : show this menu\n\nQuit : hard quit (no CloseSession sent)\nCloseSession : close this session\n\nGetDataArrayMetadata  [URI] [PATH_IN_RESOURCE]\nGetDataArray          [URI] [PATH_IN_RESOURCE]\nGetDataSubArray       [URI] [PATH_IN_RESOURCE] [START] [COUNT]\nPutDataArray          [[UUIDS]]* [DATASPACE_NAME] [EPC_FILE_PATH] [H5_FILE_PATH]\n\nGetDataObject         [URI_1] [...] [URI_N]\nPutDataObject         [FILE_PATH] [[DATASPACE_NAME]]\nGetResources          [[uri=eml:/// or notUri=DataspaceName]] [[depth=1]] [[SCOPE]]\n\nGetDataspaces\nPutDataspace          [NAME]\nDeleteDataspace       [NAME]\n```\n\n## Configuration\n\nIt is possible to change the \"capabilities\" of your client in the prefilled RequestSession object in [etpclient/etp/requester.py](https://github.com/geosiris-technologies/etpclient-python/blob/main/etpclient/etp/requester.py#L180)\n\nTo add/remove supported protocols and request, modify the file [etpclient/etp/serverprotocols.py](https://github.com/geosiris-technologies/etpclient-python/blob/main/etpclient/etp/serverprotocols.py#L166). Do not forget to decorate your protocols to allow the class ETPConnection to use your protocol.\nExample : \n```python\n@ETPConnection.on(CommunicationProtocol.CORE)\nclass myCoreProtocol(CoreHandler):\n    ...\n```",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "ETP client",
    "version": "0.0.3",
    "project_urls": {
        "Homepage": "http://www.geosiris.com",
        "Repository": "https://github.com/geosiris-technologies/etpclient-python"
    },
    "split_keywords": [
        "etp"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fda5ccf70f0c266fdb4d3057df966ca071bfff5c67462526785d812acb659270",
                "md5": "6e872a205938be9ac82ab3778a9fa6c2",
                "sha256": "ab6ca73bee6486733d202475f8bda65869c4ba94bd3d9ff0cf5b3cbad2555e17"
            },
            "downloads": -1,
            "filename": "etpclient-0.0.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "6e872a205938be9ac82ab3778a9fa6c2",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9,<4.0",
            "size": 34566,
            "upload_time": "2023-11-03T00:05:59",
            "upload_time_iso_8601": "2023-11-03T00:05:59.053196Z",
            "url": "https://files.pythonhosted.org/packages/fd/a5/ccf70f0c266fdb4d3057df966ca071bfff5c67462526785d812acb659270/etpclient-0.0.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "64c39fc595e5f0dc062dc0d004f7dd4ea67692e40e2409fb121c4fa413f079dc",
                "md5": "d82ab4d8e54d5e3bb7c848ffeab7c668",
                "sha256": "a0fab184830a7432b0dc386735ce946f1353b6173f58ccbe57167d589cd61852"
            },
            "downloads": -1,
            "filename": "etpclient-0.0.3.tar.gz",
            "has_sig": false,
            "md5_digest": "d82ab4d8e54d5e3bb7c848ffeab7c668",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9,<4.0",
            "size": 30863,
            "upload_time": "2023-11-03T00:06:00",
            "upload_time_iso_8601": "2023-11-03T00:06:00.665038Z",
            "url": "https://files.pythonhosted.org/packages/64/c3/9fc595e5f0dc062dc0d004f7dd4ea67692e40e2409fb121c4fa413f079dc/etpclient-0.0.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-11-03 00:06:00",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "geosiris-technologies",
    "github_project": "etpclient-python",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "etpclient"
}
        
Elapsed time: 0.66718s