aas-http-client 0.2.2__py3-none-any.whl → 0.2.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of aas-http-client might be problematic. Click here for more details.

@@ -5,7 +5,7 @@ from aas_http_client.wrapper.sdk_wrapper import SdkWrapper, create_wrapper_by_co
5
5
  from pathlib import Path
6
6
  import json
7
7
  import basyx.aas.adapter.json
8
- from basyx.aas.model import AssetAdministrationShell
8
+ import basyx.aas.model
9
9
 
10
10
  logger = logging.getLogger(__name__)
11
11
 
@@ -43,7 +43,7 @@ def start():
43
43
 
44
44
  logger.info(f"Client created successfully. {shells}")
45
45
 
46
- def _create_shell() -> AssetAdministrationShell:
46
+ def _create_shell() -> basyx.aas.model.AssetAdministrationShell:
47
47
  # create an AAS
48
48
  aas_short_id: str = model_builder.create_unique_short_id("poc_aas")
49
49
  aas = model_builder.create_base_ass(aas_short_id)
@@ -12,7 +12,7 @@ from aas_http_client.client import AasHttpClient, _create_client
12
12
  logger = logging.getLogger(__name__)
13
13
 
14
14
  class SdkWrapper():
15
- """Represents a SdkWrapper to communicate with a REST API."""
15
+ """Represents a wrapper for the BaSyx Python SDK to communicate with a REST API."""
16
16
  _client: AasHttpClient = None
17
17
 
18
18
  def post_shells(self, aas: AssetAdministrationShell) -> dict | None:
@@ -215,7 +215,7 @@ def create_wrapper_by_url(
215
215
  connection_time_out: int = 60,
216
216
  ssl_verify: str = True, # noqa: FBT002
217
217
  ) -> SdkWrapper | None:
218
- """Create a BaSyx server interface client from the given parameters.
218
+ """Create a wrapper for the BaSyx Python SDK from the given parameters.
219
219
 
220
220
  :param base_url: base URL of the BaSyx server, e.g. "http://basyx_python_server:80/"_
221
221
  :param username: username for the BaSyx server interface client, defaults to ""_
@@ -225,9 +225,9 @@ def create_wrapper_by_url(
225
225
  :param time_out: timeout for the API calls, defaults to 200
226
226
  :param connection_time_out: timeout for the connection to the API, defaults to 60
227
227
  :param ssl_verify: whether to verify SSL certificates, defaults to True
228
- :return: An instance of HttpClient initialized with the provided parameters.
228
+ :return: An instance of SdkWrapper initialized with the provided parameters.
229
229
  """
230
- logger.info(f"Create BaSyx server interface client from URL '{base_url}'")
230
+ logger.info(f"Create BaSyx Python SDK wrapper from URL '{base_url}'")
231
231
  config_dict: dict[str, str] = {}
232
232
  config_dict["base_url"] = base_url
233
233
  config_dict["username"] = username
@@ -249,12 +249,12 @@ def create_wrapper_by_url(
249
249
 
250
250
 
251
251
 
252
- def create_wrapper_by_config(config_file: Path, password: str = "") -> AasHttpClient | None:
253
- """Create a BaSyx server interface client from the given parameters.
252
+ def create_wrapper_by_config(config_file: Path, password: str = "") -> SdkWrapper | None:
253
+ """Create a wrapper for the BaSyx Python SDK from the given parameters.
254
254
 
255
255
  :param config_file: Path to the configuration file containing the BaSyx server connection settings.
256
256
  :param password: password for the BaSyx server interface client, defaults to ""_
257
- :return: An instance of HttpClient initialized with the provided parameters.
257
+ :return: An instance of SdkWrapper initialized with the provided parameters.
258
258
  """
259
259
  logger.info(f"Create BaSyx Python SDK wrapper from configuration file '{config_file}'")
260
260
  if not config_file.exists():
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aas-http-client
3
- Version: 0.2.2
3
+ Version: 0.2.3
4
4
  Summary: Generic python HTTP client for communication with various types of AAS servers
5
5
  Author-email: Daniel Klein <daniel.klein@em.ag>
6
6
  License: # :em engineering methods AG Software License
@@ -127,17 +127,27 @@ Dynamic: license-file
127
127
  [![CI](https://github.com/fluid40/aas-http-client/actions/workflows/CI.yml/badge.svg?branch=main&cache-bust=1)](https://github.com/fluid40/aas-http-client/actions)
128
128
  [![PyPI version](https://img.shields.io/pypi/v/aas-http-client.svg)](https://pypi.org/project/aas-http-client/)
129
129
 
130
- This is a generic HTTP client that can communicate with various types of AAS and submodel repository servers. The client uses Python dictionaries for input and output parameters.
131
- Additionally, wrappers are provided that work with various AAS frameworks and use the HTTP client as middleware.
130
+ This is a generic HTTP client that can communicate with various types of AAS and submodel repository servers. It uses Python dictionaries for input and output parameters of functions. It supports the most common endpoints for the [specified AAS server endpoint](https://industrialdigitaltwin.io/aas-specifications/IDTA-01002/v3.1.1/specification/interfaces.html). The client is compatible with various types of AAS repository server.
131
+ The client should be compatible with various types of AAS repository server.
132
132
 
133
- Currently, wrappers are available for the following frameworks:
134
- - BaSyx Python SDK
133
+ Tested servers include:
134
+ - [Eclipse BaSyx .Net SDK server](https://github.com/eclipse-basyx/basyx-dotnet)
135
+ - [Eclipse BaSyx .Net SDK server (Fluid4.0 Fork)](https://github.com/fluid40/basyx-dotnet)
136
+ - [Eclipse BaSyx Java SDK server](https://github.com/eclipse-basyx/basyx-java-sdk)
137
+ - [Eclipse BaSyx Python SDK server](https://github.com/eclipse-basyx/basyx-python-sdk)
138
+ - [Eclipse AASX server](https://github.com/eclipse-aaspe)
139
+
140
+ The behavior may vary depending on the details of the implementation and compliance with the [AAS specification](https://industrialdigitaltwin.org/en/content-hub/aasspecifications). It also depends on which endpoints are provided by the server.
141
+
142
+ Additionally, wrappers are provided that work with various AAS frameworks and use the HTTP client as middleware. These wrappers use the SDK-specific data model classes for function input and output parameters.
143
+ Wrappers are currently available for the following frameworks:
144
+ - [Eclipse BaSyx Python SDK](https://github.com/eclipse-basyx/basyx-python-sdk)
135
145
 
136
146
  ## Links
137
147
 
138
148
  🚀 [Getting Started](docs/getting_started.md)
139
149
 
140
- 💻 [Developer Quickstart](docs/dev_guide.md)
150
+ 💻 [Tutorials](docs/tutorials.md)
141
151
 
142
152
  👨‍⚕️ [Troubleshooting](docs/troubleshooting.md)
143
153
 
@@ -167,12 +177,12 @@ client = create_client_by_url(
167
177
  print(client.get_shells())
168
178
  ```
169
179
 
170
- ### SDK Wrapper
180
+ ### BaSyx Python SDK Wrapper
171
181
 
172
182
  ```python
173
- from aas_http_client.wrapper.sdk_wrapper import create_wrapper_by_config
183
+ from aas_http_client.wrapper.sdk_wrapper import create_wrapper_by_url
174
184
 
175
- wrapper = create_wrapper_by_config(
185
+ wrapper = create_wrapper_by_url(
176
186
  base_url="http://myaasserver:5043/"
177
187
  )
178
188
 
@@ -2,13 +2,13 @@ aas_http_client/__init__.py,sha256=cAr1mQzWp0G0LKtkAOYzc9t95OY3jM3Aj4bKnxx0Dso,9
2
2
  aas_http_client/client.py,sha256=6d3g9VNhex1JrZwIXtBTopSTw3bsf5NZBSWG5mHYuQg,20705
3
3
  aas_http_client/core/encoder.py,sha256=FS7P0FPakzFsGz70eRFDHQZFA_2nlKLlWIxavtnFrPg,660
4
4
  aas_http_client/core/version_check.py,sha256=721Zs3xSRrJTYZtAxkaUWg9LLKtpU7oFM62DzQHZdE4,705
5
- aas_http_client/demo/demo_process.py,sha256=ESR0ETJdEWXHZRswcuNh9qArStFyHFWCNYxhJjLB0tA,2616
5
+ aas_http_client/demo/demo_process.py,sha256=QfneAU2KXHUt90jEsOEx1VA4xgXW7PHsLsVVXI5BOgg,2602
6
6
  aas_http_client/demo/logging_handler.py,sha256=VJtZ4u3x_LhYZQtfNck7FuXhGFZm7gid0uDhvf9GjJ8,5596
7
7
  aas_http_client/utilities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
8
  aas_http_client/utilities/model_builder.py,sha256=bL4hy3uHh1Y_uL6KmLIfo9ORiUqWNlyToJrAt8G1rpw,3877
9
- aas_http_client/wrapper/sdk_wrapper.py,sha256=MClsjWDuKDMN_R5b9vEkbxn_sFQ-UhGN3DBzWkLiVQU,10314
10
- aas_http_client-0.2.2.dist-info/licenses/LICENSE,sha256=ayt4HY-Tjoe1Uvj47j6UdNq8mEufKcKFangurChIHxQ,5990
11
- aas_http_client-0.2.2.dist-info/METADATA,sha256=7NJUrDZSukbER5QnPI6CEL_oIsVeaarzy_CLQX8PFvg,9144
12
- aas_http_client-0.2.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
13
- aas_http_client-0.2.2.dist-info/top_level.txt,sha256=vzvoz2vjeTLwpuz-Y-eEfoQ7T3byoaKshVlFMFH5NaM,16
14
- aas_http_client-0.2.2.dist-info/RECORD,,
9
+ aas_http_client/wrapper/sdk_wrapper.py,sha256=-0bKx5oP5jYosVAnuRlajMgJA1PJbOLLWm1j0fh1y_k,10334
10
+ aas_http_client-0.2.3.dist-info/licenses/LICENSE,sha256=ayt4HY-Tjoe1Uvj47j6UdNq8mEufKcKFangurChIHxQ,5990
11
+ aas_http_client-0.2.3.dist-info/METADATA,sha256=9sTQ4BxzU1ZOFMG2UVjAIb_sGWD1grxZPKt4-VSPzlk,10301
12
+ aas_http_client-0.2.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
13
+ aas_http_client-0.2.3.dist-info/top_level.txt,sha256=vzvoz2vjeTLwpuz-Y-eEfoQ7T3byoaKshVlFMFH5NaM,16
14
+ aas_http_client-0.2.3.dist-info/RECORD,,