Skip to content
Snippets Groups Projects
Commit 1b7dbd53 authored by srsdanny's avatar srsdanny
Browse files

Lockok: work in progress

parent 1362c074
No related branches found
No related tags found
No related merge requests found
...@@ -68,5 +68,11 @@ long LocalCloudAdapter::getSize(CloudFile cloudFile) { ...@@ -68,5 +68,11 @@ long LocalCloudAdapter::getSize(CloudFile cloudFile) {
} }
bool LocalCloudAdapter::checkExists(CloudFile cloudFile){ bool LocalCloudAdapter::checkExists(CloudFile cloudFile){
if (FILE *file = fopen((cloudFolder + cloudFile.getCloudFileID()).c_str(), "r")) {
fclose(file);
return true; return true;
} }
else {
return false;
}
}
\ No newline at end of file
...@@ -99,19 +99,28 @@ void CloudFileSystem::setHomeNetworkBehaviour(HomeNetworkBehaviour *homeNetworkB ...@@ -99,19 +99,28 @@ void CloudFileSystem::setHomeNetworkBehaviour(HomeNetworkBehaviour *homeNetworkB
void CloudFileSystem::lock(FileDescriptor fileDescriptor) { void CloudFileSystem::lock(FileDescriptor fileDescriptor) {
LOG_ENTER_EXIT; LOG_ENTER_EXIT;
//Create lockfile by some business logic string lockFileName(fileDescriptor.getFileID() + ".lck");
LockFile lockFile("", "");
ofstream lockFileTmp(fragFolder + lockFileName, std::ios::binary);
// TODO
lockFileTmp << "Client ID comes here";
lockFileTmp.close();
application.cal.upload(lockFile); //LockFile lockFile(fragment.getCloudId(), lockFileName);
//application.cal.upload(lockFile);
} }
void CloudFileSystem::unlock(FileDescriptor fileDescriptor) { void CloudFileSystem::unlock(FileDescriptor fileDescriptor) {
LOG_ENTER_EXIT; LOG_ENTER_EXIT;
//Get lockfile by some business logic //Get lockfile by some business logic
LockFile lockFile("", ""); for each (Fragment fragment in fileDescriptor.getFragments())
{
application.cal.upload(lockFile); LockFile lockFile(fragment.getCloudId(), fragment.getCloudFileID() + ".lck");
application.cal.deleteFile(lockFile);
}
} }
void CloudFileSystem::isLocked(FileDescriptor fileDescriptor) { void CloudFileSystem::isLocked(FileDescriptor fileDescriptor) {
......
...@@ -27,6 +27,8 @@ class Application; ...@@ -27,6 +27,8 @@ class Application;
*/ */
class CloudFileSystem { class CloudFileSystem {
private: private:
string fragFolder = "C:\\Users\\krisz\\raspberrycloud\\skeleton\\Program\\temp\\";
/** /**
* Indicates where is the process running * Indicates where is the process running
* @TODO rethink * @TODO rethink
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment