You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
259 lines
7.9 KiB
259 lines
7.9 KiB
// File autogenerated
|
|
|
|
// declaration include
|
|
#include "propertiesInterface.h"
|
|
|
|
// TQt includes
|
|
#include <tqdom.h>
|
|
#include <tqmap.h>
|
|
#include <tqstring.h>
|
|
#include <tqstringlist.h>
|
|
|
|
// TQt D-Bus includes
|
|
#include <tqdbusdata.h>
|
|
#include <tqdbusdatalist.h>
|
|
#include <tqdbusdatamap.h>
|
|
#include <tqdbuserror.h>
|
|
#include <tqdbusmessage.h>
|
|
#include <tqdbusvariant.h>
|
|
|
|
|
|
namespace org
|
|
{
|
|
namespace freedesktop
|
|
{
|
|
namespace DBus
|
|
{
|
|
|
|
void PropertiesInterface::buildIntrospectionData(TQDomElement& interfaceElement)
|
|
{
|
|
interfaceElement.setAttribute("name", "org.freedesktop.DBus.Properties");
|
|
|
|
TQDomDocument document = interfaceElement.ownerDocument();
|
|
TQDomElement methodElement = document.createElement("method");
|
|
methodElement.setAttribute("name", "Get");
|
|
|
|
TQDomElement argumentElement = document.createElement("arg");
|
|
argumentElement.setAttribute("name", "interface");
|
|
argumentElement.setAttribute("type", "s");
|
|
argumentElement.setAttribute("direction", "in");
|
|
methodElement.appendChild(argumentElement);
|
|
|
|
argumentElement = document.createElement("arg");
|
|
argumentElement.setAttribute("name", "name");
|
|
argumentElement.setAttribute("type", "s");
|
|
argumentElement.setAttribute("direction", "in");
|
|
methodElement.appendChild(argumentElement);
|
|
|
|
argumentElement = document.createElement("arg");
|
|
argumentElement.setAttribute("name", "value");
|
|
argumentElement.setAttribute("type", "v");
|
|
argumentElement.setAttribute("direction", "out");
|
|
methodElement.appendChild(argumentElement);
|
|
|
|
interfaceElement.appendChild(methodElement);
|
|
|
|
methodElement = document.createElement("method");
|
|
methodElement.setAttribute("name", "Set");
|
|
|
|
argumentElement = document.createElement("arg");
|
|
argumentElement.setAttribute("name", "interface");
|
|
argumentElement.setAttribute("type", "s");
|
|
argumentElement.setAttribute("direction", "in");
|
|
methodElement.appendChild(argumentElement);
|
|
|
|
argumentElement = document.createElement("arg");
|
|
argumentElement.setAttribute("name", "name");
|
|
argumentElement.setAttribute("type", "s");
|
|
argumentElement.setAttribute("direction", "in");
|
|
methodElement.appendChild(argumentElement);
|
|
|
|
argumentElement = document.createElement("arg");
|
|
argumentElement.setAttribute("name", "value");
|
|
argumentElement.setAttribute("type", "v");
|
|
argumentElement.setAttribute("direction", "in");
|
|
methodElement.appendChild(argumentElement);
|
|
|
|
interfaceElement.appendChild(methodElement);
|
|
|
|
methodElement = document.createElement("method");
|
|
methodElement.setAttribute("name", "GetAll");
|
|
|
|
argumentElement = document.createElement("arg");
|
|
argumentElement.setAttribute("name", "interface");
|
|
argumentElement.setAttribute("type", "s");
|
|
argumentElement.setAttribute("direction", "in");
|
|
methodElement.appendChild(argumentElement);
|
|
|
|
argumentElement = document.createElement("arg");
|
|
argumentElement.setAttribute("name", "properties");
|
|
argumentElement.setAttribute("type", "a{sv}");
|
|
argumentElement.setAttribute("direction", "out");
|
|
methodElement.appendChild(argumentElement);
|
|
|
|
interfaceElement.appendChild(methodElement);
|
|
|
|
methodElement = document.createElement("signal");
|
|
methodElement.setAttribute("name", "PropertiesChanged");
|
|
|
|
argumentElement = document.createElement("arg");
|
|
argumentElement.setAttribute("name", "interface");
|
|
argumentElement.setAttribute("type", "s");
|
|
argumentElement.setAttribute("direction", "out");
|
|
methodElement.appendChild(argumentElement);
|
|
|
|
argumentElement = document.createElement("arg");
|
|
argumentElement.setAttribute("name", "changed_properties");
|
|
argumentElement.setAttribute("type", "a{sv}");
|
|
argumentElement.setAttribute("direction", "out");
|
|
methodElement.appendChild(argumentElement);
|
|
|
|
argumentElement = document.createElement("arg");
|
|
argumentElement.setAttribute("name", "invalidated_properties");
|
|
argumentElement.setAttribute("type", "as");
|
|
argumentElement.setAttribute("direction", "out");
|
|
methodElement.appendChild(argumentElement);
|
|
|
|
interfaceElement.appendChild(methodElement);
|
|
}
|
|
|
|
bool PropertiesInterface::emitPropertiesChanged(const TQString& interface, const TQMap< TQString, TQT_DBusVariant >& changed_properties, const TQStringList& invalidated_properties)
|
|
{
|
|
TQString path = objectPath();
|
|
Q_ASSERT(!path.isEmpty());
|
|
|
|
TQT_DBusMessage message = TQT_DBusMessage::signal(path, "org.freedesktop.DBus.Properties", "PropertiesChanged");
|
|
|
|
message << TQT_DBusData::fromString(interface);
|
|
message << TQT_DBusData::fromStringKeyMap(TQT_DBusDataMap< TQString >(changed_properties));
|
|
message << TQT_DBusData::fromList((invalidated_properties));
|
|
|
|
return handleSignalSend(message);
|
|
}
|
|
|
|
|
|
TQT_DBusMessage PropertiesInterface::callGet(const TQT_DBusMessage& message)
|
|
{
|
|
TQT_DBusError error;
|
|
TQT_DBusMessage reply;
|
|
|
|
TQString _interface = message[0].toString();
|
|
TQString _name = message[1].toString();
|
|
TQT_DBusVariant _value;
|
|
|
|
if (Get(_interface, _name, _value, error))
|
|
{
|
|
reply = TQT_DBusMessage::methodReply(message);
|
|
reply << TQT_DBusData::fromVariant(_value);
|
|
}
|
|
else
|
|
{
|
|
if (!error.isValid())
|
|
{
|
|
tqWarning("Call to implementation of org::freedesktop::DBus::PropertiesInterface::Get returned 'false' but error object is not valid!");
|
|
|
|
error = TQT_DBusError::stdFailed("org.freedesktop.DBus.Properties.Get execution failed");
|
|
}
|
|
|
|
reply = TQT_DBusMessage::methodError(message, error);
|
|
}
|
|
|
|
return reply;
|
|
}
|
|
|
|
TQT_DBusMessage PropertiesInterface::callSet(const TQT_DBusMessage& message)
|
|
{
|
|
TQT_DBusError error;
|
|
TQT_DBusMessage reply;
|
|
|
|
TQString _interface = message[0].toString();
|
|
TQString _name = message[1].toString();
|
|
TQT_DBusVariant _value = message[2].toVariant();
|
|
|
|
if (Set(_interface, _name, _value, error))
|
|
{
|
|
reply = TQT_DBusMessage::methodReply(message);
|
|
}
|
|
else
|
|
{
|
|
if (!error.isValid())
|
|
{
|
|
tqWarning("Call to implementation of org::freedesktop::DBus::PropertiesInterface::Set returned 'false' but error object is not valid!");
|
|
|
|
error = TQT_DBusError::stdFailed("org.freedesktop.DBus.Properties.Set execution failed");
|
|
}
|
|
|
|
reply = TQT_DBusMessage::methodError(message, error);
|
|
}
|
|
|
|
return reply;
|
|
}
|
|
|
|
TQT_DBusMessage PropertiesInterface::callGetAll(const TQT_DBusMessage& message)
|
|
{
|
|
TQT_DBusError error;
|
|
TQT_DBusMessage reply;
|
|
|
|
TQString _interface = message[0].toString();
|
|
TQMap< TQString, TQT_DBusVariant > _properties;
|
|
|
|
if (GetAll(_interface, _properties, error))
|
|
{
|
|
reply = TQT_DBusMessage::methodReply(message);
|
|
reply << TQT_DBusData::fromStringKeyMap(TQT_DBusDataMap< TQString >(_properties));
|
|
}
|
|
else
|
|
{
|
|
if (!error.isValid())
|
|
{
|
|
tqWarning("Call to implementation of org::freedesktop::DBus::PropertiesInterface::GetAll returned 'false' but error object is not valid!");
|
|
|
|
error = TQT_DBusError::stdFailed("org.freedesktop.DBus.Properties.GetAll execution failed");
|
|
}
|
|
|
|
reply = TQT_DBusMessage::methodError(message, error);
|
|
}
|
|
|
|
return reply;
|
|
}
|
|
|
|
bool PropertiesInterface::handleMethodCall(const TQT_DBusMessage& message)
|
|
{
|
|
if (message.interface() != "org.freedesktop.DBus.Properties") return false;
|
|
|
|
if (message.member() == "Get")
|
|
{
|
|
TQT_DBusMessage reply = callGet(message);
|
|
handleMethodReply(reply);
|
|
|
|
return true;
|
|
}
|
|
|
|
if (message.member() == "Set")
|
|
{
|
|
TQT_DBusMessage reply = callSet(message);
|
|
handleMethodReply(reply);
|
|
|
|
return true;
|
|
}
|
|
|
|
if (message.member() == "GetAll")
|
|
{
|
|
TQT_DBusMessage reply = callGetAll(message);
|
|
handleMethodReply(reply);
|
|
|
|
return true;
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
}; // namespace DBus
|
|
|
|
}; // namespace freedesktop
|
|
|
|
}; // namespace org
|
|
|
|
// End of File
|
|
|