diff options
Diffstat (limited to 'qpid/cpp/src/qpid/broker/PersistableQueue.h')
-rw-r--r-- | qpid/cpp/src/qpid/broker/PersistableQueue.h | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/qpid/cpp/src/qpid/broker/PersistableQueue.h b/qpid/cpp/src/qpid/broker/PersistableQueue.h deleted file mode 100644 index 2d30513884..0000000000 --- a/qpid/cpp/src/qpid/broker/PersistableQueue.h +++ /dev/null @@ -1,90 +0,0 @@ -#ifndef _broker_PersistableQueue_h -#define _broker_PersistableQueue_h - -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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 <string> -#include "Persistable.h" -#include <boost/shared_ptr.hpp> - -namespace qpid { -namespace broker { - - -/** -* Empty class to be used by any module that wanted to set an external per queue store into -* persistableQueue -*/ - -class ExternalQueueStore -{ -public: - virtual ~ExternalQueueStore() {}; - -}; - - -/** - * The interface queues must expose to the MessageStore in order to be - * persistable. - */ -class PersistableQueue : public Persistable -{ -public: - typedef boost::shared_ptr<PersistableQueue> shared_ptr; - - virtual const std::string& getName() const = 0; - virtual ~PersistableQueue() { - if (externalQueueStore) - delete externalQueueStore; - }; - - inline void setExternalQueueStore(ExternalQueueStore* inst){ - if (externalQueueStore!=inst && externalQueueStore) - delete externalQueueStore; - externalQueueStore = inst; - }; - - inline ExternalQueueStore* getExternalQueueStore() const {return externalQueueStore;}; - - PersistableQueue():externalQueueStore(NULL){ - }; - - - /** - * call back to signal async AIO writes have - * completed (enqueue/dequeue etc) - * - * Note: DO NOT do work on this callback, if you block - * this callback you will block the store. - */ - virtual void notifyDurableIOComplete() = 0; -protected: - - ExternalQueueStore* externalQueueStore; - -}; - -}} - - -#endif |