mirror of
				https://github.com/Icinga/icinga2.git
				synced 2025-10-30 18:53:54 +01:00 
			
		
		
		
	No external user needs to manipulate the actual object dependency graphs. This was maybe introduced for debugging purposes at that time but if someone messes with this in prod - good luck with that. Oh, apart from that it's broken :( and doesn't track parents as its implies but children.
		
			
				
	
	
		
			54 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
 | |
| 
 | |
| #ifndef SCRIPTUTILS_H
 | |
| #define SCRIPTUTILS_H
 | |
| 
 | |
| #include "base/i2-base.hpp"
 | |
| #include "base/string.hpp"
 | |
| #include "base/array.hpp"
 | |
| #include "base/dictionary.hpp"
 | |
| #include "base/type.hpp"
 | |
| #include "base/configobject.hpp"
 | |
| 
 | |
| namespace icinga
 | |
| {
 | |
| 
 | |
| /**
 | |
|  * @ingroup base
 | |
|  */
 | |
| class ScriptUtils
 | |
| {
 | |
| public:
 | |
| 	static void StaticInitialize();
 | |
| 	static String CastString(const Value& value);
 | |
| 	static double CastNumber(const Value& value);
 | |
| 	static bool CastBool(const Value& value);
 | |
| 	static bool Regex(const std::vector<Value>& args);
 | |
| 	static bool Match(const std::vector<Value>& args);
 | |
| 	static bool CidrMatch(const std::vector<Value>& args);
 | |
| 	static double Len(const Value& value);
 | |
| 	static Array::Ptr Union(const std::vector<Value>& arguments);
 | |
| 	static Array::Ptr Intersection(const std::vector<Value>& arguments);
 | |
| 	static void Log(const std::vector<Value>& arguments);
 | |
| 	static Array::Ptr Range(const std::vector<Value>& arguments);
 | |
| 	static Type::Ptr TypeOf(const Value& value);
 | |
| 	static Array::Ptr Keys(const Object::Ptr& obj);
 | |
| 	static Dictionary::Ptr GetTemplate(const Value& vtype, const String& name);
 | |
| 	static Array::Ptr GetTemplates(const Type::Ptr& type);
 | |
| 	static ConfigObject::Ptr GetObject(const Value& type, const String& name);
 | |
| 	static Array::Ptr GetObjects(const Type::Ptr& type);
 | |
| 	static void Assert(const Value& arg);
 | |
| 	static String MsiGetComponentPathShim(const String& component);
 | |
| 	static double Ptr(const Object::Ptr& object);
 | |
| 	static Value Glob(const std::vector<Value>& args);
 | |
| 	static Value GlobRecursive(const std::vector<Value>& args);
 | |
| 	static String GetEnv(const String& key);
 | |
| 
 | |
| private:
 | |
| 	ScriptUtils();
 | |
| };
 | |
| 
 | |
| }
 | |
| 
 | |
| #endif /* SCRIPTUTILS_H */
 |