diff options
author | Wolf Bergenheim <ext-wolf.2.bergenheim@nokia.com> | 2010-01-05 10:48:35 +0200 |
---|---|---|
committer | Wolf Bergenheim <ext-wolf.2.bergenheim@nokia.com> | 2010-01-05 10:48:35 +0200 |
commit | 60e514250464d6b563ab92b19bf717e57d7b6a52 (patch) | |
tree | a0878381379c51518f43f67b4ec121058a5c3427 /src/resource.cpp | |
parent | d84673cf92c0abddb12d9b24131b1af718c1543d (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.cpp | 41 |
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; } + |