Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET Apache Qpid Documentation
SinkOptions.h
Go to the documentation of this file.
1 #ifndef QPID_LOG_SINKOPTIONS_H
2 #define QPID_LOG_SINKOPTIONS_H
3 
4 /*
5  *
6  * Copyright (c) 2006 The Apache Software Foundation
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  *
20  */
21 
22 #include "qpid/Options.h"
23 #include <string>
24 
25 namespace qpid {
26 namespace log {
27 
28 class Logger;
29 
38 struct SinkOptions : public qpid::Options {
39 
40  // Create a platform's SinkOptions. Pass argv0 as the program name,
41  // useful for syslog-type logging.
42  static SinkOptions *create(const std::string& argv0=std::string());
43 
44  SinkOptions(const std::string& name="Logging sink options")
45  : qpid::Options(name)
46  {}
47  virtual ~SinkOptions() {}
48 
49  virtual SinkOptions& operator=(const SinkOptions&) = 0;
50 
51  // This allows the caller to indicate that there's no normal outputs
52  // available. For example, when running as a daemon. In these cases, the
53  // platform's "syslog"-type output should replace the default stderr
54  // unless some other sink has been selected.
55  virtual void detached(void) = 0;
56 
57  // The Logger acting on these options calls setup() to request any
58  // Sinks be set up and fed back to the logger.
59  virtual void setup(Logger *logger) = 0;
60 };
61 
62 }} // namespace qpid::log
63 
64 #endif

Qpid C++ API Reference
Generated on Thu Feb 14 2013 for Qpid C++ Client API by doxygen 1.8.3