summaryrefslogtreecommitdiff
path: root/trunk/qpid/cpp/src/qpid/sys/windows/LockFile.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/qpid/cpp/src/qpid/sys/windows/LockFile.cpp')
-rwxr-xr-xtrunk/qpid/cpp/src/qpid/sys/windows/LockFile.cpp64
1 files changed, 0 insertions, 64 deletions
diff --git a/trunk/qpid/cpp/src/qpid/sys/windows/LockFile.cpp b/trunk/qpid/cpp/src/qpid/sys/windows/LockFile.cpp
deleted file mode 100755
index 048c2d5b18..0000000000
--- a/trunk/qpid/cpp/src/qpid/sys/windows/LockFile.cpp
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- *
- * Copyright (c) 2008 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-#include "qpid/sys/LockFile.h"
-#include "qpid/sys/windows/check.h"
-
-#include <windows.h>
-
-namespace qpid {
-namespace sys {
-
-class LockFilePrivate {
- friend class LockFile;
-
- HANDLE fd;
-
-public:
- LockFilePrivate(HANDLE f) : fd(f) {}
-};
-
-LockFile::LockFile(const std::string& path_, bool create)
- : path(path_), created(create) {
-
- HANDLE h = ::CreateFile(path.c_str(),
- create ? (GENERIC_READ|GENERIC_WRITE) : GENERIC_READ,
- FILE_SHARE_READ|FILE_SHARE_WRITE|FILE_SHARE_DELETE,
- 0, /* Default security */
- create ? OPEN_ALWAYS : OPEN_EXISTING,
- FILE_FLAG_DELETE_ON_CLOSE, /* Delete file when closed */
- NULL);
- if (h == INVALID_HANDLE_VALUE)
- throw qpid::Exception(path + ": " + qpid::sys::strError(GetLastError()));
-
- // Lock up to 4Gb
- if (!::LockFile(h, 0, 0, 0xffffffff, 0))
- throw qpid::Exception(path + ": " + qpid::sys::strError(GetLastError()));
- impl.reset(new LockFilePrivate(h));
-}
-
-LockFile::~LockFile() {
- if (impl) {
- if (impl->fd != INVALID_HANDLE_VALUE) {
- ::UnlockFile(impl->fd, 0, 0, 0xffffffff, 0);
- ::CloseHandle(impl->fd);
- }
- }
-}
-
-}} /* namespace qpid::sys */