/* * DeviceServiceBase.cpp * * Created on: Feb 1, 2021 * Author: emanoil * * hardwarecontrol Copyright (C) 2021 trinity desktop development team * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 * as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #include #include #include #include "common.h" #include #include "DeviceServiceBase.h" DeviceServiceBase::DeviceServiceBase(TQT_DBusConnection &conn) : m_connection(&conn) { // TODO Auto-generated constructor stub } DeviceServiceBase::~DeviceServiceBase() { DEL(m_connection) } bool DeviceServiceBase::canSetDeviceValue(const TQString& device, TQT_DBusError& error) { // check if path is writable int rval = access (device.latin1(), W_OK); if (rval != 0) return false; return true; } bool DeviceServiceBase::setDeviceValue(const TQString& device, const TQString& param, TQT_DBusError& error) { // make sure path is writable if (canSetDeviceValue(device, error)) { TQFile file(device); if (!file.open( IO_WriteOnly ) ) { error = TQT_DBusError::stdFailed(TQString ("Could not open device %1").arg(device)); return false; } TQTextStream stream( &file ); stream << param; file.close(); } else { error = TQT_DBusError::stdFailed(TQString ("Could not access device %1").arg(device)); return false; } return true; }