Lines Matching +full:event +full:- +full:name
1 /*-
21 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
34 * \file event.cc
62 #include "event.h"
78 /*----------------------------------- Event ----------------------------------*/
79 //- Event Static Protected Data ------------------------------------------------
80 const string Event::s_theEmptyString;
82 Event::EventTypeRecord Event::s_typeTable[] =
84 { Event::NOTIFY, "Notify" },
85 { Event::NOMATCH, "No Driver Match" },
86 { Event::ATTACH, "Attach" },
87 { Event::DETACH, "Detach" }
90 //- Event Static Public Methods ------------------------------------------------
91 Event *
92 Event::Builder(Event::Type type, NVPairMap &nvPairs, in Builder()
95 return (new Event(type, nvPairs, eventString)); in Builder()
98 Event *
99 Event::CreateEvent(const EventFactory &factory, const string &eventString) in CreateEvent()
102 Type type(static_cast<Event::Type>(eventString[0])); in CreateEvent()
124 Event::DevName(std::string &name) const in DevName()
129 /* TODO: simplify this function with C++-11 <regex> methods */
131 Event::IsDiskDev() const in IsDiskDev()
154 dName <= &diskDevNames[numDrivers - 1]; dName++) { in IsDiskDev()
160 if (devName.length() - find_start >= prefixLen in IsDiskDev()
170 Event::TypeToString(Event::Type type) in TypeToString()
173 EventTypeRecord *lastRec(s_typeTable + NUM_ELEMENTS(s_typeTable) - 1); in TypeToString()
176 if (rec->m_type == type) in TypeToString()
177 return (rec->m_typeName); in TypeToString()
182 //- Event Public Methods -------------------------------------------------------
184 Event::Value(const string &varName) const in Value()
190 return (item->second); in Value()
194 Event::Contains(const string &varName) const in Contains()
200 Event::ToString() const in ToString()
204 NVPairMap::const_iterator devName(m_nvPairs.find("device-name")); in ToString()
206 result << devName->second << ": "; in ToString()
210 && systemName->second != "none") in ToString()
211 result << systemName->second << ": "; in ToString()
221 << curVar->first << "=" << curVar->second; in ToString()
229 Event::Print() const in Print()
235 Event::Log(int priority) const in Log()
240 //- Event Virtual Public Methods -----------------------------------------------
241 Event::~Event() in ~Event()
246 Event *
247 Event::DeepCopy() const in DeepCopy()
249 return (new Event(*this)); in DeepCopy()
253 Event::Process() const in Process()
259 Event::GetTimestamp() const in GetTimestamp()
265 throw Exception("Event contains no timestamp: %s", in GetTimestamp()
275 Event::DevPath(std::string &path) const in DevPath()
285 if (devFd == -1) in DevPath()
288 /* Normalize the device name in case the DEVFS event is for a link. */ in DevPath()
302 Event::PhysicalPath(std::string &path) const in PhysicalPath()
310 if (devFd == -1) in PhysicalPath()
322 //- Event Protected Methods ----------------------------------------------------
323 Event::Event(Type type, NVPairMap &map, const string &eventString) in Event() function in DevdCtl::Event
330 Event::Event(const Event &src) in Event() function in DevdCtl::Event
338 Event::ParseEventString(Event::Type type, in ParseEventString()
350 * <type><device-name><unit> <pnpvars> \ in ParseEventString()
355 * "name=value" format, and let the generic parser in ParseEventString()
366 nvpairs["device-name"] = eventString.substr(start, end - start); in ParseEventString()
396 * we hit whitespace or '!' (event type "notice"). in ParseEventString()
405 string key(eventString.substr(start, end - start)); in ParseEventString()
417 end = eventString.length() - 1; in ParseEventString()
418 string value(eventString.substr(start, end - start)); in ParseEventString()
425 Event::TimestampEventString(std::string &eventString) in TimestampEventString()
429 * Add a timestamp as the final field of the event if it is in TimestampEventString()
433 const size_t bufsize = 32; // Long enough for a 64-bit int in TimestampEventString()
447 /*-------------------------------- DevfsEvent --------------------------------*/
448 //- DevfsEvent Static Public Methods -------------------------------------------
449 Event *
450 DevfsEvent::Builder(Event::Type type, NVPairMap &nvPairs, in Builder()
456 //- DevfsEvent Static Protected Methods ----------------------------------------
484 //- DevfsEvent Virtual Public Methods ------------------------------------------
485 Event *
497 //- DevfsEvent Public Methods --------------------------------------------------
507 DevfsEvent::DevName(std::string &name) const in DevName()
512 name = Value("cdev"); in DevName()
513 return (!name.empty()); in DevName()
516 //- DevfsEvent Protected Methods -----------------------------------------------
517 DevfsEvent::DevfsEvent(Event::Type type, NVPairMap &nvpairs, in DevfsEvent()
519 : Event(type, nvpairs, eventString) in DevfsEvent()
524 : Event(src) in DevfsEvent()
528 /*--------------------------------- GeomEvent --------------------------------*/
529 //- GeomEvent Static Public Methods --------------------------------------------
530 Event *
531 GeomEvent::Builder(Event::Type type, NVPairMap &nvpairs, in Builder()
537 //- GeomEvent Virtual Public Methods -------------------------------------------
538 Event *
545 GeomEvent::DevName(std::string &name) const in DevName()
548 name = Value("devname"); in DevName()
550 name = Value("cdev"); in DevName()
551 return (!name.empty()); in DevName()
555 //- GeomEvent Protected Methods ------------------------------------------------
556 GeomEvent::GeomEvent(Event::Type type, NVPairMap &nvpairs, in GeomEvent()
558 : Event(type, nvpairs, eventString), in GeomEvent()
564 : Event(src), in GeomEvent()
569 /*--------------------------------- ZfsEvent ---------------------------------*/
570 //- ZfsEvent Static Public Methods ---------------------------------------------
571 Event *
572 ZfsEvent::Builder(Event::Type type, NVPairMap &nvpairs, in Builder()
578 //- ZfsEvent Virtual Public Methods --------------------------------------------
579 Event *
586 ZfsEvent::DevName(std::string &name) const in DevName()
591 //- ZfsEvent Protected Methods -------------------------------------------------
592 ZfsEvent::ZfsEvent(Event::Type type, NVPairMap &nvpairs, in ZfsEvent()
594 : Event(type, nvpairs, eventString), in ZfsEvent()
601 : Event(src), in ZfsEvent()