1. 01 Jul, 2024 1 commit
  2. 20 Jun, 2024 3 commits
  3. 17 Jun, 2024 2 commits
  4. 12 Jun, 2024 1 commit
  5. 01 May, 2024 2 commits
  6. 30 Apr, 2024 2 commits
  7. 25 Apr, 2024 3 commits
  8. 24 Apr, 2024 4 commits
  9. 10 Mar, 2024 3 commits
  10. 01 Mar, 2024 1 commit
  11. 28 Feb, 2024 1 commit
  12. 22 Feb, 2024 3 commits
  13. 21 Feb, 2024 7 commits
  14. 20 Feb, 2024 1 commit
  15. 16 Feb, 2024 3 commits
  16. 08 Feb, 2024 1 commit
    • Florian Meinicke's avatar
      Fix handling of `UaStatusCodeError`s in `UaProcessor.process_message` · 8cf8682a
      Florian Meinicke authored
      I noticed that raising a `BadOutOfRangeError` in a server callback set
      through `Server.subscribe_server_callback` resulted in a
      *BadInternalError* on the client side (tested with UaExpert) rather than
      the expected *BadOutOfRange*. But raising a
      `ServiceError(ua.StatusCodes.BadOutOfRange)` instead would show the the
      expected *BadOutOfRange* error in the client.
      The reason for this idiosyncrasy was that `UaStatusCodeError`s were not
      explicitly caught. Therefore the "default" `except Exception` handler
      would be used which resulted in a
      `ua.StatusCode(ua.StatusCodes.BadInternalError)` to be sent to the
      client instead of the actual status code of the error that occurred.
      
      This commit changes the behavior such that the status code of
      `UaStatusCodeError`s is respected the same way as it's already done for
      `ServiceError`s so that the client correctly receives the status code of
      the `raise`d error.
      
      See also https://github.com/FreeOpcUa/opcua-asyncio/discussions/1563#discussioncomment-8382555
      8cf8682a
  17. 07 Feb, 2024 1 commit
    • Florian Meinicke's avatar
      Add `set_attribute_value_setter()` method to server · feca6f4f
      Florian Meinicke authored
      This method allows to set a custom setter function on a per-attribute
      basis. This setter function will then be called by
      `write_attribute_value()` instead of writing the attribute value
      directly. This allows for custom logic to be implemented by the user
      (such as checking if the value to be written is within a certain range)
      and if not, an appropriate error can be raised from that setter,
      preventing the write and notifying the client about the occurred error.
      feca6f4f
  18. 14 Jan, 2024 1 commit