Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DotAAS Part 2: HTTP API #238

Merged
merged 195 commits into from
Aug 16, 2024
Merged

Commits on Feb 14, 2024

  1. Configuration menu
    Copy the full SHA
    d7b9e43 View commit details
    Browse the repository at this point in the history
  2. adapter.http: fix codestyle

    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    2b9c061 View commit details
    Browse the repository at this point in the history
  3. change maximum werkzeug version to <2

    list werkzeug as a dependency in the readme
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    a8d4ded View commit details
    Browse the repository at this point in the history
  4. adapter.http: serialize response data in xml/json response classes

    adapter.http: add custom identifier converter for werkzeug
    adapter.http: restructure routing map, add first submodel route
    adapter.http: refine imports
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    f56149f View commit details
    Browse the repository at this point in the history
  5. adapter.http: move to folder with seperate files

    adapter._generic: add identifier URI encode/decode functions
    adapter.http: make api routes return ResponseData instead of the Response directly
    adapter.http: add Result + Message types + factory function
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    45c83df View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    657b4dd View commit details
    Browse the repository at this point in the history
  7. adapter.http: add json/xml result serialization

    adapter.http: add request body parsing
    adapter.http: implement all remaining aas routes
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    05e94e5 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    8ae5de4 View commit details
    Browse the repository at this point in the history
  9. adapter.http: prepare for new api routes from new spec

    - use stripped object serialization/deserialization
    - change response format (new spec always returns a result object)
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    3a953dc View commit details
    Browse the repository at this point in the history
  10. adapter.http: move code from folder to file http.py

    adapter.http: remove old routes, add a few new aas and submodel routes
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    a3856cb View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    8f50d8e View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    6dd9153 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    6cdf030 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    8866706 View commit details
    Browse the repository at this point in the history
  15. adapter.http: add location header to 201 responses

    using the werkzeug.routing.MapAdapter url builder
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    be57ecf View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    a414d67 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    ef96640 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    76a444c View commit details
    Browse the repository at this point in the history
  19. adapter.http: refactor routing

    Requests to URIs with a trailing slash will now be redirected
    to the respective URI without trailing slash.
    e.g. GET /aas/$identifier/ -> GET /aas/$identifier
    
    A redirect will only be set if the respective URI without trailing slash
    exists and the current request method is valid for the new URI.
    
    Historically, the trailing slash was only present when the requested
    resource was a directory. In our case the resources don't work like
    directories, in the sense, that each resource doesn't even list possible
    subsequent resources. So because our resources don't behave like
    directories, they shouldn't have a trailing slash.
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    9d27d12 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    fc2d747 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    3ed487d View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    40b3176 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    f13f0f9 View commit details
    Browse the repository at this point in the history
  24. adapter.http: get root cause in parse_request_body()

    for better error messages
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    88e923e View commit details
    Browse the repository at this point in the history
  25. adapter.http: remove minlength=1 from string url parameters

    because that's default anyways
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    1760ae1 View commit details
    Browse the repository at this point in the history
  26. adapter.http: rewrite idShort as id_short in error message

    to stay consistent with the rest of this library
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    19ab6e0 View commit details
    Browse the repository at this point in the history
  27. adapter.http: add nested submodel elements endpoints

    add IdShortPathConverter and helper functions
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    29ca324 View commit details
    Browse the repository at this point in the history
  28. adapter.http: compare id_shorts case-insensitively in PUT routes

    change type check from `not A is B` to `A is not B` for better readability
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    779d15e View commit details
    Browse the repository at this point in the history
  29. adapter.http: add nested submodel element endpoints for type-specific…

    … attributes
    
    like statement, annotation and value
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    000e4b3 View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    257ba14 View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    4cb5002 View commit details
    Browse the repository at this point in the history
  32. Configuration menu
    Copy the full SHA
    e471bd7 View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    6ce1aaf View commit details
    Browse the repository at this point in the history
  34. Configuration menu
    Copy the full SHA
    00b6598 View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    921c774 View commit details
    Browse the repository at this point in the history
  36. http-api-oas: add first working draft

    add initial specification discussed in the meeting (03.09.2020)
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    677b883 View commit details
    Browse the repository at this point in the history
  37. Configuration menu
    Copy the full SHA
    e8ec2a7 View commit details
    Browse the repository at this point in the history
  38. http-api-oas: formatting

    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    59a689f View commit details
    Browse the repository at this point in the history
  39. Configuration menu
    Copy the full SHA
    72b2dc1 View commit details
    Browse the repository at this point in the history
  40. http-api-oas: remove concept dictionary routes

    update json schema
    make routes more consistent
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    0fdf559 View commit details
    Browse the repository at this point in the history
  41. http-api-oas: cleanup descriptions

    remove default responses
    smaller fixes
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    83ababd View commit details
    Browse the repository at this point in the history
  42. http-api-oas: fix name (uppercase P)

    add link to git repo of the PyI40AAS framework
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    7c0d55f View commit details
    Browse the repository at this point in the history
  43. Configuration menu
    Copy the full SHA
    e0d184e View commit details
    Browse the repository at this point in the history
  44. Configuration menu
    Copy the full SHA
    fb1d2a6 View commit details
    Browse the repository at this point in the history
  45. Configuration menu
    Copy the full SHA
    5796848 View commit details
    Browse the repository at this point in the history
  46. Configuration menu
    Copy the full SHA
    94ff8a6 View commit details
    Browse the repository at this point in the history
  47. Configuration menu
    Copy the full SHA
    9291a04 View commit details
    Browse the repository at this point in the history
  48. Configuration menu
    Copy the full SHA
    4b515f5 View commit details
    Browse the repository at this point in the history
  49. Configuration menu
    Copy the full SHA
    a4b32c0 View commit details
    Browse the repository at this point in the history
  50. http-api-oas: updating a nested SubmodelElement with a different type…

    … is a BadRequest (400)
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    170c731 View commit details
    Browse the repository at this point in the history
  51. Configuration menu
    Copy the full SHA
    038fa11 View commit details
    Browse the repository at this point in the history
  52. Configuration menu
    Copy the full SHA
    f16e999 View commit details
    Browse the repository at this point in the history
  53. Configuration menu
    Copy the full SHA
    79d812e View commit details
    Browse the repository at this point in the history
  54. Configuration menu
    Copy the full SHA
    1658e75 View commit details
    Browse the repository at this point in the history
  55. Configuration menu
    Copy the full SHA
    35316a3 View commit details
    Browse the repository at this point in the history
  56. Configuration menu
    Copy the full SHA
    383114f View commit details
    Browse the repository at this point in the history
  57. http-api-oas: allow changing the identifying attribute (idShort or ty…

    …pe) in PUT/PATCH routes
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    c27232a View commit details
    Browse the repository at this point in the history
  58. http-api-oas: move to test/adapter/ directory

    improve filename
    use .yaml instead of .yml file extension (see https://yaml.org/faq.html)
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    b7573db View commit details
    Browse the repository at this point in the history
  59. Configuration menu
    Copy the full SHA
    b0a2984 View commit details
    Browse the repository at this point in the history
  60. adapter.http: make trailing slashes the default

    http-api-oas: follow suit
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    8151c61 View commit details
    Browse the repository at this point in the history
  61. Configuration menu
    Copy the full SHA
    538de8c View commit details
    Browse the repository at this point in the history
  62. Configuration menu
    Copy the full SHA
    e42212b View commit details
    Browse the repository at this point in the history
  63. Configuration menu
    Copy the full SHA
    3c91f64 View commit details
    Browse the repository at this point in the history
  64. Configuration menu
    Copy the full SHA
    1259203 View commit details
    Browse the repository at this point in the history
  65. Configuration menu
    Copy the full SHA
    d821da6 View commit details
    Browse the repository at this point in the history
  66. Configuration menu
    Copy the full SHA
    3737e8f View commit details
    Browse the repository at this point in the history
  67. Configuration menu
    Copy the full SHA
    cc18322 View commit details
    Browse the repository at this point in the history
  68. Configuration menu
    Copy the full SHA
    40da58f View commit details
    Browse the repository at this point in the history
  69. Configuration menu
    Copy the full SHA
    06ca48d View commit details
    Browse the repository at this point in the history
  70. Configuration menu
    Copy the full SHA
    ff99b7f View commit details
    Browse the repository at this point in the history
  71. http-api-oas: add links

    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    826e80a View commit details
    Browse the repository at this point in the history
  72. test: add http api tests

    requirements.txt: add hypothesis and schemathesis
    .gitignore: add /.hypothesis/ directory
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    faa8d45 View commit details
    Browse the repository at this point in the history
  73. Configuration menu
    Copy the full SHA
    dcae764 View commit details
    Browse the repository at this point in the history
  74. adapter.http: update AAS interface for new api spec

    update response encoders
    update response data
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    1cb4d2e View commit details
    Browse the repository at this point in the history
  75. Configuration menu
    Copy the full SHA
    7ceef25 View commit details
    Browse the repository at this point in the history
  76. Configuration menu
    Copy the full SHA
    d05be61 View commit details
    Browse the repository at this point in the history
  77. Configuration menu
    Copy the full SHA
    428a2ba View commit details
    Browse the repository at this point in the history
  78. Configuration menu
    Copy the full SHA
    7daee18 View commit details
    Browse the repository at this point in the history
  79. Configuration menu
    Copy the full SHA
    758537b View commit details
    Browse the repository at this point in the history
  80. adapter.http: use example without missing attributes (contains no views)

    because the view routes have been removed
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    ed90671 View commit details
    Browse the repository at this point in the history
  81. adapter.http: make json/xml decoder interface independent of the requ…

    …est body
    
    add aas/submodel repository interface
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    f4741fd View commit details
    Browse the repository at this point in the history
  82. Configuration menu
    Copy the full SHA
    7ee258f View commit details
    Browse the repository at this point in the history
  83. adapter.http: update to Review3

    add Base64UrlJsonConverter for json objects encoded as base64url as part of the url
    support deserializing submodels in HTTPApiDecoder
    add POST routes, remove 'create' functionality from PUT routes
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    3c3f2a2 View commit details
    Browse the repository at this point in the history
  84. Configuration menu
    Copy the full SHA
    fa1c148 View commit details
    Browse the repository at this point in the history
  85. adapter.http: update for changes made in the last 2 years

    This commit consists mostly of renamed variables, but also other stuff
    like the identifiers, which consisted of an IdentifierType and the
    actual Identifier previously.
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    b4d82d0 View commit details
    Browse the repository at this point in the history
  86. Configuration menu
    Copy the full SHA
    27b6218 View commit details
    Browse the repository at this point in the history
  87. Configuration menu
    Copy the full SHA
    cdf1765 View commit details
    Browse the repository at this point in the history
  88. Configuration menu
    Copy the full SHA
    720ca3f View commit details
    Browse the repository at this point in the history
  89. adapter.http: remove an outdated comment

    Views were removed from the spec and we're no longer using
    `example_aas_missing_attributes()` anyway.
    jkhsjdhjs committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    c4b564d View commit details
    Browse the repository at this point in the history
  90. Configuration menu
    Copy the full SHA
    3bf02d5 View commit details
    Browse the repository at this point in the history
  91. Configuration menu
    Copy the full SHA
    0b13c18 View commit details
    Browse the repository at this point in the history
  92. Configuration menu
    Copy the full SHA
    4185ec7 View commit details
    Browse the repository at this point in the history
  93. Configuration menu
    Copy the full SHA
    3808925 View commit details
    Browse the repository at this point in the history
  94. Configuration menu
    Copy the full SHA
    99f480e View commit details
    Browse the repository at this point in the history
  95. Configuration menu
    Copy the full SHA
    03904a9 View commit details
    Browse the repository at this point in the history
  96. Configuration menu
    Copy the full SHA
    841b2fc View commit details
    Browse the repository at this point in the history

Commits on Feb 15, 2024

  1. Configuration menu
    Copy the full SHA
    c666488 View commit details
    Browse the repository at this point in the history

Commits on Feb 21, 2024

  1. adapter.http: remove /aas submount from AAS repository

    The submount has been removed from the spec, yay!
    jkhsjdhjs committed Feb 21, 2024
    Configuration menu
    Copy the full SHA
    55b8f1c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e857a64 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    712df72 View commit details
    Browse the repository at this point in the history

Commits on Mar 6, 2024

  1. Merge pull request #9 from rwth-iat/http_api/remove_aas_submount

    adapter.http: remove `/aas` submount from AAS repository
    jkhsjdhjs authored Mar 6, 2024
    Configuration menu
    Copy the full SHA
    b9ba39a View commit details
    Browse the repository at this point in the history
  2. Merge pull request #10 from rwth-iat/http_api/update_base_url

    adapter.http: update base URL from `/api/v1` to `/api/v3.0`
    jkhsjdhjs authored Mar 6, 2024
    Configuration menu
    Copy the full SHA
    1d2813e View commit details
    Browse the repository at this point in the history
  3. Merge pull request #11 from rwth-iat/http_api/improve_IdentifierConve…

    …rter_error_messages
    
    adapter.http: remove hardcoded encoding from error messages
    jkhsjdhjs authored Mar 6, 2024
    Configuration menu
    Copy the full SHA
    d424ace View commit details
    Browse the repository at this point in the history

Commits on Mar 15, 2024

  1. Merge pull request #12 from rwth-iat/main

    merge `main` in `feature/http_api`
    jkhsjdhjs authored Mar 15, 2024
    Configuration menu
    Copy the full SHA
    107f158 View commit details
    Browse the repository at this point in the history
  2. adapter.http: fix base64 decoding without padding

    Many online tools omit the padding when encoding base64url. Thus,
    requesters may omit the padding as well, which would cause the decoding
    to fail. Thus, we simply always append two padding characters, because
    python doesn't complain about too much padding.
    jkhsjdhjs committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    a9975f7 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5bfbad3 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    71ff951 View commit details
    Browse the repository at this point in the history
  5. adapter.http: simplify XML serialization

    ... by using (now) builtin functionality.
    jkhsjdhjs committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    8065153 View commit details
    Browse the repository at this point in the history
  6. adapter.http: fix ModelReference json deserialization

    The http adapter still used the old `construct_aas_reference` function,
    which doesn't exist anymore. The error was masked due to a broad `type:
    ignore`. These are changed to only ignore assignment type errors.
    jkhsjdhjs committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    b392d49 View commit details
    Browse the repository at this point in the history
  7. adapter.http: simplify SubmodelElement deletion

    We can always call `_get_submodel_or_nested_submodel_element`, as it
    returns the submodel itself if we don't pass it any id_shorts.
    jkhsjdhjs committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    ae8d527 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    2e00cff View commit details
    Browse the repository at this point in the history
  9. adapter.http: use Referable.validate_id_short() to validate id_shorts

    ... instead of the previous way of creating a `MultiLanguageProperty`
    to validate id_shorts.
    jkhsjdhjs committed Mar 15, 2024
    Configuration menu
    Copy the full SHA
    6667a41 View commit details
    Browse the repository at this point in the history
  10. Merge pull request #14 from rwth-iat/http_api/improve_base64url_decoding

    adapter.http: fix base64 decoding without padding
    jkhsjdhjs authored Mar 15, 2024
    Configuration menu
    Copy the full SHA
    9a22020 View commit details
    Browse the repository at this point in the history

Commits on Mar 16, 2024

  1. Merge pull request #15 from rwth-iat/http_api/remove_submodel_submount

    adapter.http: remove `/submodel` submount from Submodel repository
    jkhsjdhjs authored Mar 16, 2024
    Configuration menu
    Copy the full SHA
    d5cb103 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #16 from rwth-iat/http_api/use_builtin_id_short_pa…

    …th_resolution
    
    adapter.http: use builtin id_short path resolution
    jkhsjdhjs authored Mar 16, 2024
    Configuration menu
    Copy the full SHA
    fe60097 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #17 from rwth-iat/http_api/fix_json_model_referenc…

    …e_deserialization
    
    adapter.http: fix `ModelReference` json deserialization
    jkhsjdhjs authored Mar 16, 2024
    Configuration menu
    Copy the full SHA
    154b6fc View commit details
    Browse the repository at this point in the history
  4. Merge pull request #18 from rwth-iat/http_api/simplify_xml_serialization

    adapter.http: simplify XML serialization
    jkhsjdhjs authored Mar 16, 2024
    Configuration menu
    Copy the full SHA
    2ef77c9 View commit details
    Browse the repository at this point in the history
  5. Merge pull request #19 from rwth-iat/http_api/simplify_submodel_eleme…

    …nt_deletion
    
    adapter.http: simplify `SubmodelElement` deletion
    jkhsjdhjs authored Mar 16, 2024
    Configuration menu
    Copy the full SHA
    80eeb44 View commit details
    Browse the repository at this point in the history
  6. Merge pull request #20 from rwth-iat/http_api/simplify_id_short_valid…

    …ation
    
    adapter.http: simplify `id_short` validation
    jkhsjdhjs authored Mar 16, 2024
    Configuration menu
    Copy the full SHA
    79d82aa View commit details
    Browse the repository at this point in the history

Commits on Mar 17, 2024

  1. fixing delete_submodels()

    Frosty2500 committed Mar 17, 2024
    Configuration menu
    Copy the full SHA
    251afe6 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    50780e0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b0bdd78 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    9f94a11 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    ac406f5 View commit details
    Browse the repository at this point in the history

Commits on Mar 18, 2024

  1. Configuration menu
    Copy the full SHA
    8dbba42 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    857b3df View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ffb833b View commit details
    Browse the repository at this point in the history

Commits on Mar 20, 2024

  1. Configuration menu
    Copy the full SHA
    78d6af9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b2f9d79 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #22 from rwth-iat/http_api/semanticIdfiltering

    adapter.http: implement submodel repo routes
    jkhsjdhjs authored Mar 20, 2024
    Configuration menu
    Copy the full SHA
    b53783a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    c2c6cc1 View commit details
    Browse the repository at this point in the history
  5. adapter.http: update AAS submodel refs DELETE route

    The route now uses the submodel identifier instead of the submodel
    reference.
    jkhsjdhjs committed Mar 20, 2024
    Configuration menu
    Copy the full SHA
    30e739d View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    990b7f9 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    b88db58 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    9c9cd44 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    bae8fbc View commit details
    Browse the repository at this point in the history

Commits on Mar 27, 2024

  1. Merge pull request #26 from rwth-iat/http_api/improve_base64url_encode

    adapter.http: change `base64url_encode()` function to return `str`
    jkhsjdhjs authored Mar 27, 2024
    Configuration menu
    Copy the full SHA
    acd123d View commit details
    Browse the repository at this point in the history
  2. Merge pull request #24 from rwth-iat/http_api/update_aas_submodel_ref…

    …s_routes
    
    adapter.http: update AAS submodel refs path and `DELETE` route
    jkhsjdhjs authored Mar 27, 2024
    Configuration menu
    Copy the full SHA
    44e3827 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #25 from rwth-iat/http_api/suffix_slashes

    adapter.http: suffix slashes to all routes
    jkhsjdhjs authored Mar 27, 2024
    Configuration menu
    Copy the full SHA
    cfdd7d7 View commit details
    Browse the repository at this point in the history

Commits on Mar 28, 2024

  1. adapter.http: implement AAS API submodel routes via redirects

    The submodel routes of the AAS API `/shells/<aas_id>/submodels` are the
    same already implemented as the submodel API, so we return a redirect
    here, after checking that the AAS indeed has a reference to the
    requested submodel.
    
    `PUT` and `DELETE` are different, as we also have to update the AAS in
    this case, either by adding a new updated reference in case of a `PUT`
    request changes the submodel id, or by removing the submodel reference
    for `DELETE` requests.
    jkhsjdhjs committed Mar 28, 2024
    Configuration menu
    Copy the full SHA
    c86283a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7fad3f2 View commit details
    Browse the repository at this point in the history

Commits on Mar 29, 2024

  1. Configuration menu
    Copy the full SHA
    88bad21 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3c4a9f2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b11f672 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    5e91f4d View commit details
    Browse the repository at this point in the history

Commits on Mar 31, 2024

  1. Merge pull request #27 from rwth-iat/http_api/add_aas_submodel_routes

    adapter.http: implement AAS API submodel routes via redirects
    jkhsjdhjs authored Mar 31, 2024
    Configuration menu
    Copy the full SHA
    1f2a4a5 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #28 from rwth-iat/http_api/move_asset_information_…

    …routes_to_submount
    
    adapter.http: move `asset-information` routes to a submount
    jkhsjdhjs authored Mar 31, 2024
    Configuration menu
    Copy the full SHA
    f1817f6 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #29 from rwth-iat/http_api/fix_qualifier_routes

    adapter.http: fix qualifier routes
    jkhsjdhjs authored Mar 31, 2024
    Configuration menu
    Copy the full SHA
    8083001 View commit details
    Browse the repository at this point in the history
  4. adapter.http: rename IdentifierConverter to Base64URLConverter

    The `IdentifierConverter` is also used to decode values from URLs, that
    aren't necessarily Identifiers, e.g. Qualifier types. Thus, a name like
    `Base64URLConverter` suits its use better and is also more expressive.
    
    For the same reasons, the key `identifier`, which was used for the
    `IdentifierConverter`, is renamed to `base64url`.
    jkhsjdhjs committed Mar 31, 2024
    Configuration menu
    Copy the full SHA
    c27e47f View commit details
    Browse the repository at this point in the history
  5. Merge pull request #30 from rwth-iat/http_api/rename_IdentifierConverter

    adapter.http: rename `IdentifierConverter` to `Base64URLConverter`
    Frosty2500 authored Mar 31, 2024
    Configuration menu
    Copy the full SHA
    301e924 View commit details
    Browse the repository at this point in the history

Commits on Apr 3, 2024

  1. Configuration menu
    Copy the full SHA
    973f81a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    237aebe View commit details
    Browse the repository at this point in the history
  3. adapter.http: refactor AAS retrieval

    Methods `_get_shell()` and `_get_shells()` are added similarly to
    `_get_submodel()` and `_get_submodels()`, which were previously added in
    ffb833b.
    
    Furthermore, when requesting multiple AAS/Submodels, we're now also
    updating these in `_get_all_obj_of_type()` before returning them.
    Finally, updating AAS/Submodel objects is also moved to `_get_obj_ts()`.
    jkhsjdhjs committed Apr 3, 2024
    Configuration menu
    Copy the full SHA
    74ea148 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2a5a360 View commit details
    Browse the repository at this point in the history
  5. Merge pull request #31 from rwth-iat/http_api/refactor_aas_retrieval

    adapter.http: refactor AAS retrieval
    Frosty2500 authored Apr 3, 2024
    Configuration menu
    Copy the full SHA
    85d70ac View commit details
    Browse the repository at this point in the history
  6. Merge pull request #32 from rwth-iat/http_api/remove_outdated_todos

    adapter.http: remove outdated TODOs
    Frosty2500 authored Apr 3, 2024
    Configuration menu
    Copy the full SHA
    6638498 View commit details
    Browse the repository at this point in the history

Commits on Apr 5, 2024

  1. adapter.http: implement the attachment routes (#33)

    * adapter.http: implement the attachment routes
    
    * adapter.http: fix codestyle errors
    
    * adapter.http: implement recommended changes
    
    * adapter.http: implement new recommended changes
    Frosty2500 authored Apr 5, 2024
    Configuration menu
    Copy the full SHA
    10f3301 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b591b32 View commit details
    Browse the repository at this point in the history
  3. Merge branch 'feature/http_api' of github.com:rwth-iat/basyx-python-s…

    …dk into http_api/implement_AAS_reference_routes
    Frosty2500 committed Apr 5, 2024
    Configuration menu
    Copy the full SHA
    41d32ae View commit details
    Browse the repository at this point in the history
  4. Merge pull request #34 from rwth-iat/http_api/implement_AAS_reference…

    …_routes
    
    adapter.http: implement the AAS reference routes
    jkhsjdhjs authored Apr 5, 2024
    Configuration menu
    Copy the full SHA
    384a861 View commit details
    Browse the repository at this point in the history

Commits on Apr 19, 2024

  1. Configuration menu
    Copy the full SHA
    1b86865 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d323ecb View commit details
    Browse the repository at this point in the history

Commits on Apr 23, 2024

  1. Configuration menu
    Copy the full SHA
    76d9db0 View commit details
    Browse the repository at this point in the history

Commits on Apr 28, 2024

  1. Configuration menu
    Copy the full SHA
    8ca847d View commit details
    Browse the repository at this point in the history

Commits on Apr 30, 2024

  1. Configuration menu
    Copy the full SHA
    458e401 View commit details
    Browse the repository at this point in the history

Commits on May 9, 2024

  1. Configuration menu
    Copy the full SHA
    d4cf4b2 View commit details
    Browse the repository at this point in the history

Commits on May 14, 2024

  1. Merge pull request #35 from rwth-iat/http_api/implement_pagination

    adapter.http: implement the pagination
    jkhsjdhjs authored May 14, 2024
    Configuration menu
    Copy the full SHA
    1d70049 View commit details
    Browse the repository at this point in the history

Commits on May 23, 2024

  1. Configuration menu
    Copy the full SHA
    9a09638 View commit details
    Browse the repository at this point in the history

Commits on May 24, 2024

  1. Configuration menu
    Copy the full SHA
    6d47a73 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #36 from rwth-iat/http_api/not_implemented_routes

    adapter.http: implement warning for not implemented routes
    jkhsjdhjs authored May 24, 2024
    Configuration menu
    Copy the full SHA
    7d6ad00 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ae1f6fe View commit details
    Browse the repository at this point in the history

Commits on Jun 7, 2024

  1. Merge pull request #38 from rwth-iat/http_api/fix_codestyle

    adapter.http: remove excess blank line
    Frosty2500 authored Jun 7, 2024
    Configuration menu
    Copy the full SHA
    dd1839b View commit details
    Browse the repository at this point in the history
  2. Merge pull request #37 from rwth-iat/main

    merge `main` in `feature/http_api`
    Frosty2500 authored Jun 7, 2024
    Configuration menu
    Copy the full SHA
    435bf90 View commit details
    Browse the repository at this point in the history

Commits on Jun 13, 2024

  1. adapter.aasx: allow deleting files from SupplementaryFileContainer

    `AbstractSupplementaryFileContainer` and
    `DictSupplementaryFileContainer` are extended by a `delete_file()`
    method, that allows deleting files from them. Since different files may
    have the same content, references to the files contents in
    `DictSupplementaryFileContainer._store` are tracked via
    `_store_refcount`. A files contents are only deleted from `_store`, if
    all filenames referring to these these contents are deleted, i.e. if the
    refcount reaches 0.
    jkhsjdhjs authored and s-heppner committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    9b7a7f6 View commit details
    Browse the repository at this point in the history
  2. adapter.http: fix a DeprecationWarning

    DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC)
    jkhsjdhjs committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    367746c View commit details
    Browse the repository at this point in the history
  3. adapter.http: allow retrieving and modifying File attachments via API

    This change makes use of the `SupplementaryFileContainer` interface of
    the AASX adapter. It allows the API to operate seamlessly on AASX files,
    including the contained supplementary files, without having to access
    the filesystem.
    
    Furthermore, the support for the modification of `Blob` values is
    removed (the spec prohibits it).
    jkhsjdhjs committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    ed012d0 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    5fd980a View commit details
    Browse the repository at this point in the history

Commits on Jun 15, 2024

  1. Merge pull request #40 from rwth-iat/http_api/fix_datetime_deprecatio…

    …n_warning
    
    adapter.http: fix a `DeprecationWarning`
    Frosty2500 authored Jun 15, 2024
    Configuration menu
    Copy the full SHA
    2b81898 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #41 from rwth-iat/http_api/file_attachments

    adapter.http: allow retrieving and modifying `File` attachments via API
    Frosty2500 authored Jun 15, 2024
    Configuration menu
    Copy the full SHA
    18b128b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    72c75d7 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #42 from rwth-iat/http_api/custom_base_path

    adapter.http: allow changing the API base path
    Frosty2500 authored Jun 15, 2024
    Configuration menu
    Copy the full SHA
    69f3955 View commit details
    Browse the repository at this point in the history

Commits on Jun 19, 2024

  1. adapter.http: remove nonfunctional 'Not Implemented' check

    This check was intended to return 501 instead of 404 for routes that
    haven't been implemented. However, we explicitly implement these routes
    to return 501 now anyway, returning 501 for all other paths would be
    semantically incorrect anyway and the check never worked.
    jkhsjdhjs committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    8e66b2c View commit details
    Browse the repository at this point in the history

Commits on Jun 20, 2024

  1. Configuration menu
    Copy the full SHA
    14a6013 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a6af1af View commit details
    Browse the repository at this point in the history
  3. Merge pull request #46 from rwth-iat/merge/main_in_feature_http_api

    Merge/main in feature http api
    s-heppner authored Jun 20, 2024
    Configuration menu
    Copy the full SHA
    b0e1148 View commit details
    Browse the repository at this point in the history
  4. chore: bump werkzeug to >=3.0.3

    Werkzeug 3.0.3 contains a fix for [1], so by requiring at least 3.0.3,
    we can remove unnecessary 'type: ignore' comments from the http adapter.
    
    [1]: pallets/werkzeug#2836
    jkhsjdhjs committed Jun 20, 2024
    Configuration menu
    Copy the full SHA
    cb0c281 View commit details
    Browse the repository at this point in the history
  5. adapter.http: improve type hints

    Remove 'type: ignore' comments now that we require werkzeug >=3.0.3 [1].
    Furthermore, fix the type hint of `WSGIApp._get_slice()` and make two
    other 'type: ignore' comments more explicit.
    
    [1]: pallets/werkzeug#2836
    jkhsjdhjs committed Jun 20, 2024
    Configuration menu
    Copy the full SHA
    5191fef View commit details
    Browse the repository at this point in the history
  6. Merge pull request #43 from rwth-iat/http_api/fix_type_ignore_comments

    adapter.http: remove and improve `type: ignore` comments
    Frosty2500 authored Jun 20, 2024
    Configuration menu
    Copy the full SHA
    f57a640 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    00e87b6 View commit details
    Browse the repository at this point in the history
  8. Merge pull request #44 from rwth-iat/http_api/remove_nonfunctional_no…

    …t_implemented_check
    
    adapter.http: remove nonfunctional 'Not Implemented' check
    Frosty2500 authored Jun 20, 2024
    Configuration menu
    Copy the full SHA
    b826036 View commit details
    Browse the repository at this point in the history

Commits on Jul 19, 2024

  1. Configuration menu
    Copy the full SHA
    4afc6ea View commit details
    Browse the repository at this point in the history
  2. adapter.http: remove trailing slashes from routes

    This removes trailing slashes (and redirects to paths with trailing
    slashes) from the API and makes it compatible with the PCF2 showcase and
    other webapps.
    
    Previously, all routes were implemented with a trailing slash, e.g.
    `/submodels/` instead of `/submodels`. While the API spec only specifies
    the routes without a trailing slash, this has the advantage of being
    compatible with requests to the path with a trailing slash and without
    trailing slash, as werkzeug redirects requests to the slash-terminated
    path, if available.
    
    However, this poses a problem with browsers that make use of [CORS
    preflight requests][1] (e.g. Chromium-based browsers). Here, before
    doing an actual API request, the browser sends an `OPTIONS` request to
    the path it wants to request. This is done to check potential CORS
    headers (e.g. `Access-Control-Allow-Origin`) for the path, without
    retrieving the actual data. Our implementation doesn't support `OPTIONS`
    requests, which is fine.
    After the browser has received the response to the preflight request
    (which may or may not have been successful), it attempts to retrieve the
    actual data by sending the request again with the correct request method
    (e.g. `GET`). With our server this request now results in a redirect, as
    we redirect to the path with a trailing slash appended. This is a
    problem, as the browser didn't send a CORS preflight request to the path
    it is now redirected to. It also doesn't attempt to send another CORS
    preflight request, as it already sent one, with the difference being the
    now slash-terminated path. Thus, following the redirect is prevented by
    CORS policy and the data fails to load.
    
    By making the routes available via non-slash-terminated paths we avoid
    the need for redirects, which makes the server compatible with webapps
    viewed in browsers that use preflight requests. Requests to
    slash-terminated paths will no longer work (they won't redirect to the
    path without trailing slash). This shouldn't be a problem though, as the
    API is only specified without trailing slashes anyway.
    jkhsjdhjs committed Jul 19, 2024
    Configuration menu
    Copy the full SHA
    980dd7d View commit details
    Browse the repository at this point in the history

Commits on Jul 22, 2024

  1. Merge pull request #49 from rwth-iat/http_api/improve_codestyle

    adapter.http: remove unnecessary generator expression
    Frosty2500 authored Jul 22, 2024
    Configuration menu
    Copy the full SHA
    f6019cc View commit details
    Browse the repository at this point in the history
  2. Merge pull request #50 from rwth-iat/http_api/no_trailing_slash

    adapter.http: remove trailing slashes from routes
    Frosty2500 authored Jul 22, 2024
    Configuration menu
    Copy the full SHA
    4b67798 View commit details
    Browse the repository at this point in the history

Commits on Aug 15, 2024

  1. adapter.http: add documentation of not implemented features (#52)

    This adds a module docstring to `adapter.http`,
    that details which features from the Specification
    of the Asset Administration Shell Part 2 (API)
    were not implemented.
    Frosty2500 authored Aug 15, 2024
    Configuration menu
    Copy the full SHA
    4aa818c View commit details
    Browse the repository at this point in the history