diff options
author | Gordon Sim <gsim@apache.org> | 2011-02-15 15:45:59 +0000 |
---|---|---|
committer | Gordon Sim <gsim@apache.org> | 2011-02-15 15:45:59 +0000 |
commit | 43d4ca6f747f41a79d98e1eea3e74f88fa70eb49 (patch) | |
tree | df5801e51f5fe40f2584820d6f79ee05c714bd61 | |
parent | 40060416ba6a755a9b8cc23726b7061ae27859fa (diff) | |
download | qpid-python-43d4ca6f747f41a79d98e1eea3e74f88fa70eb49.tar.gz |
QPID-3002: Added virtual destructor for new interface; Removed some more accidentally duplicated code.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1070944 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | qpid/cpp/src/qpid/broker/QueueObserver.h | 42 | ||||
-rw-r--r-- | qpid/cpp/src/qpid/broker/ThresholdAlerts.h | 73 |
2 files changed, 1 insertions, 114 deletions
diff --git a/qpid/cpp/src/qpid/broker/QueueObserver.h b/qpid/cpp/src/qpid/broker/QueueObserver.h index 2c9354cfe7..a711213dee 100644 --- a/qpid/cpp/src/qpid/broker/QueueObserver.h +++ b/qpid/cpp/src/qpid/broker/QueueObserver.h @@ -32,47 +32,7 @@ class QueuedMessage; class QueueObserver { public: - virtual void enqueued(const QueuedMessage&) = 0; - virtual void dequeued(const QueuedMessage&) = 0; - private: -}; -}} // namespace qpid::broker - -#endif /*!QPID_BROKER_QUEUEOBSERVER_H*/ -#ifndef QPID_BROKER_QUEUEOBSERVER_H -#define QPID_BROKER_QUEUEOBSERVER_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. - * - */ -namespace qpid { -namespace broker { - -class QueuedMessage; -/** - * Interface for notifying classes who want to act as 'observers' of a - * queue of particular events. - */ -class QueueObserver -{ - public: + virtual ~QueueObserver() {} virtual void enqueued(const QueuedMessage&) = 0; virtual void dequeued(const QueuedMessage&) = 0; private: diff --git a/qpid/cpp/src/qpid/broker/ThresholdAlerts.h b/qpid/cpp/src/qpid/broker/ThresholdAlerts.h index 7437c401a8..e1f59252c4 100644 --- a/qpid/cpp/src/qpid/broker/ThresholdAlerts.h +++ b/qpid/cpp/src/qpid/broker/ThresholdAlerts.h @@ -71,76 +71,3 @@ class ThresholdAlerts : public QueueObserver }} // namespace qpid::broker #endif /*!QPID_BROKER_THRESHOLDALERTS_H*/ -#ifndef QPID_BROKER_THRESHOLDALERTS_H -#define QPID_BROKER_THRESHOLDALERTS_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 "qpid/broker/QueueObserver.h" -#include "qpid/sys/Time.h" -#include "qpid/types/Variant.h" -#include <string> - -namespace qpid { -namespace framing { -class FieldTable; -} -namespace management { -class ManagementAgent; -} -namespace broker { - -class Queue; -/** - * Class to manage generation of QMF alerts when particular thresholds - * are breached on a queue. - */ -class ThresholdAlerts : public QueueObserver -{ - public: - ThresholdAlerts(const std::string& name, - qpid::management::ManagementAgent& agent, - const uint32_t countThreshold, - const uint64_t sizeThreshold, - const long repeatInterval); - void enqueued(const QueuedMessage&); - void dequeued(const QueuedMessage&); - static void observe(Queue& queue, qpid::management::ManagementAgent& agent, - const uint64_t countThreshold, - const uint64_t sizeThreshold, - const long repeatInterval); - static void observe(Queue& queue, qpid::management::ManagementAgent& agent, - const qpid::framing::FieldTable& settings); - static void observe(Queue& queue, qpid::management::ManagementAgent& agent, - const qpid::types::Variant::Map& settings); - private: - const std::string name; - qpid::management::ManagementAgent& agent; - const uint32_t countThreshold; - const uint64_t sizeThreshold; - const qpid::sys::Duration repeatInterval; - uint64_t count; - uint64_t size; - qpid::sys::AbsTime lastAlert; -}; -}} // namespace qpid::broker - -#endif /*!QPID_BROKER_THRESHOLDALERTS_H*/ |