summaryrefslogtreecommitdiff
path: root/src/resource.cpp
diff options
context:
space:
mode:
authorWolf Bergenheim <ext-wolf.2.bergenheim@nokia.com>2010-01-05 10:48:35 +0200
committerWolf Bergenheim <ext-wolf.2.bergenheim@nokia.com>2010-01-05 10:48:35 +0200
commit60e514250464d6b563ab92b19bf717e57d7b6a52 (patch)
treea0878381379c51518f43f67b4ec121058a5c3427 /src/resource.cpp
parentd84673cf92c0abddb12d9b24131b1af718c1543d (diff)
Renamed things to improive the API and implemented the mandatory State
Changed handler. Added access methods to Resource.
Diffstat (limited to 'src/resource.cpp')
-rw-r--r--src/resource.cpp41
1 files changed, 36 insertions, 5 deletions
diff --git a/src/resource.cpp b/src/resource.cpp
index 2de05ee..1765c04 100644
--- a/src/resource.cpp
+++ b/src/resource.cpp
@@ -1,7 +1,9 @@
#include "resource.h"
-Resource::Resource(enum ResourceClass type, quint16 resourceFlags, QObject *parent)
- : QObject(parent), resourceClass(type), flags(resourceFlags)
+Resource::Resource(enum ResourceClass requestedClass, quint16 requestedResources,
+ QObject *parent)
+ : QObject(parent), resourceClass(requestedClass),
+ resourceType(requestedResources), resourceState(UnknownState)
{
}
@@ -20,16 +22,44 @@ bool Resource::connectToServer()
return resourceLibrary->connectToServer();
}
-quint16 Resource::getResourceFlags()
+quint16 Resource::resources() const
{
- return flags;
+ return resourceType;
}
-enum ResourceClass Resource::getResourceClass()
+enum ResourceClass Resource::applicationClass() const
{
return resourceClass;
}
+bool Resource::hasResource(enum ResourceType resourceType) const
+{
+ if((this->resourceType & resourceType) == resourceType)
+ return true;
+ else
+ return false;
+}
+
+bool Resource::hasExclusiveAccess() const
+{
+ if(resourceState == OwnedState)
+ return true;
+ else
+ return false;
+}
+
+void Resource::handleStateChange(enum ResourceState newState)
+{
+ if(resourceState == UnknownState) {
+ resourceState = newState;
+ emit connectedToServer();
+ }
+ else {
+ resourceState = newState;
+ emit stateChanged(resourceState);
+ }
+}
+
bool Resource::requestExclusiveAccess()
{
return false;
@@ -44,3 +74,4 @@ bool Resource::getExclusiveAccessState()
{
return false;
}
+