IOControl/include/IO/Request.h
Go to the documentation of this file.
bool fromString(IO::Command &cmd, const char *str)
String toString(IO::Command cmd)
Class to manage a NUL-terminated C-style string When storing persistent strings in RAM the regular St...
Definition: CString.h:27
Handles requests for a specific device; the requests are executed by the relevant controller.
Definition: Libraries/IOControl/include/IO/Device.h:36
Request represents a single user request/response over a bus.
Definition: IOControl/include/IO/Request.h:80
virtual bool setNodeState(DevNode node, DevNode::State state)
Definition: IOControl/include/IO/Request.h:250
ErrorCode error() const
Request error code defaults to 'pending' and is set on completion.
Definition: IOControl/include/IO/Request.h:115
bool nodeAdjust(DevNode node, int value)
Definition: IOControl/include/IO/Request.h:215
virtual bool setValue(int value)
If nodes support values, implement this method.
Definition: IOControl/include/IO/Request.h:233
Request(const Request &)=delete
void setCommand(Command cmd)
Set the command code.
Definition: IOControl/include/IO/Request.h:167
virtual void handleEvent(Event event)
Implementations may override this method as required.
virtual DevNode::States getNodeStates(DevNode node)
Query node status from response.
Definition: IOControl/include/IO/Request.h:241
void complete(ErrorCode err)
virtual void getJson(JsonObject json) const
Get result of a completed request in JSON format.
void setID(const String &value)
Request identifiers are optional, useful for tracking remote requests.
Definition: IOControl/include/IO/Request.h:159
virtual ErrorCode parseJson(JsonObjectConst json)
Fill this request from a JSON description.
void onComplete(Callback callback)
Set the request completion callback.
Definition: IOControl/include/IO/Request.h:176
virtual bool setNode(DevNode node)
If nodes are supported, implement this method.
Definition: IOControl/include/IO/Request.h:225
const CString & id() const
Get the request ID, if there is one.
Definition: IOControl/include/IO/Request.h:265
bool nodeSet(DevNode node, int value)
For nodes supporting analogue state (e.g. brightness)
Definition: IOControl/include/IO/Request.h:209
Base class template for linked items with type casting.
Definition: LinkedObject.h:62
Json json
Definition: IOControl/include/IO/Controller.h:26
XX(tag, comment)
@ unknown