activemq-cpp-3.9.5
Delayed.h
Go to the documentation of this file.
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18#ifndef _DECAF_UTIL_CONCURRENT_DELAYED_H_
19#define _DECAF_UTIL_CONCURRENT_DELAYED_H_
20
21#include <decaf/util/Config.h>
22
25
26namespace decaf {
27namespace util {
28namespace concurrent {
29
37 class DECAF_API Delayed : public decaf::lang::Comparable<Delayed> {
38 public:
39
40 virtual ~Delayed() {}
41
51 virtual long long getDelay( const TimeUnit& unit ) = 0;
52
53 };
54
55}}}
56
57#endif /* _DECAF_UTIL_CONCURRENT_DELAYED_H_ */
This interface imposes a total ordering on the objects of each class that implements it.
Definition Comparable.h:33
A mix-in style interface for marking objects that should be acted upon after a given delay.
Definition Delayed.h:37
virtual ~Delayed()
Definition Delayed.h:40
virtual long long getDelay(const TimeUnit &unit)=0
Returns the remaining delay associated with this object, in the given time unit.
A TimeUnit represents time durations at a given unit of granularity and provides utility methods to c...
Definition TimeUnit.h:62
#define DECAF_API
Definition Config.h:29
Definition AbstractExecutorService.h:28
Definition AbstractCollection.h:33
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition AprPool.h:25