Skip to content

implement RW-multiple and RW-all properties for HTTP client #114

@VigneshVSV

Description

@VigneshVSV

The server already supports it, it is posssible to issue this operation. Enable it for the client through the scripting API (as in ObjectProxy.read_multiple_properties etc.) for the HTTP.

See implementation of read and write multiple properties in the properties registry.
(For example, read multiple properties accepts a names parameters as the argument and returns a dictionary - usually JSON for application/json content type. If the names is empty, it returns all of them. similar logic applies to write operation.)

Rough steps:

  • in client/http/consumed_interactions.py, define a class for read and write multiple properties. A similar implementation can be found under client.zmq.consumed_interactions.py for ZMQ. It looks like it needs to be invoked as an action (due to the handler living inside a sub object, which we dont directly expose). This is only a detail, this does not affect the behaviour as far as the user is concerned.
  • in client/factory.py, compose this object and set it as an attribute of the Object Proxy. Make sure object proxy is able to invoke it.
  • add tests - in test_13_procotols_http , there are end to end test where the read-write multiple properties have been overriden with empty tests or removed from testing. Bring them back and they should pass.

Metadata

Metadata

Assignees

No one assigned

    Labels

    beginnerbeginner level good first issues, usually issues that can worked on without skimming the whole repogood first issueGood for newcomers

    Projects

    Status

    In progress

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions