/usr/include/log4shib/HierarchyMaintainer.hh is in liblog4shib-dev 1.0.9-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | /*
* HierarchyMaintainer.hh
*
* Copyright 2000, LifeLine Networks BV (www.lifeline.nl). All rights reserved.
* Copyright 2000, Bastiaan Bakker. All rights reserved.
*
* See the COPYING file for the terms of usage and distribution.
*/
#ifndef _LOG4SHIB_HIERARCHYMAINTAINER_HH
#define _LOG4SHIB_HIERARCHYMAINTAINER_HH
#include <log4shib/Portability.hh>
#include <string>
#include <map>
#include <vector>
#include <log4shib/Category.hh>
#include <log4shib/threading/Threading.hh>
namespace log4shib {
/**
* HierarchyMaintainer is an internal log4shib class. It is responsible
* for maintaining the hierarchy of Categories. Applications should
* not have to use this class directly.
**/
class HierarchyMaintainer {
friend class Log4cppCleanup;
public:
typedef std::map<std::string, Category*> CategoryMap;
static HierarchyMaintainer& getDefaultMaintainer();
HierarchyMaintainer();
virtual ~HierarchyMaintainer();
virtual Category* getExistingInstance(const std::string& name);
virtual Category& getInstance(const std::string& name);
virtual std::vector<Category*>* getCurrentCategories() const;
virtual void shutdown();
virtual void deleteAllCategories();
protected:
virtual Category* _getExistingInstance(const std::string& name);
virtual Category& _getInstance(const std::string& name);
CategoryMap _categoryMap;
mutable threading::Mutex _categoryMutex;
private:
static HierarchyMaintainer* _defaultMaintainer;
};
}
#endif // _LOG4SHIB_HIERARCHYMAINTAINER_HH
|