namespace icinga { code {{{ class NameComposer { public: virtual String MakeName(const String& shortName, const Dictionary::Ptr props) const = 0; }; }}} abstract class DynamicObject { [config] String __name (Name); [config] String name (ShortName) { get {{{ if (m_ShortName.IsEmpty()) return GetName(); else return m_ShortName; }}} }; [config, get_protected] String type (TypeName); [config] String zone; [config, get_protected] Array::Ptr templates; [config] Dictionary::Ptr methods; [config] Dictionary::Ptr vars (VarsRaw); [get_protected] bool active; [get_protected] bool start_called; [get_protected] bool stop_called; Dictionary::Ptr authority_info; [protected] Dictionary::Ptr extensions; [state] Value override_vars; }; }