LArSoft  v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
MessageFacilityMsg.cc
Go to the documentation of this file.
2 // vim: set sw=2 expandtab :
3 
5 #include "messagefacility/Utilities/formatTime.h"
6 
7 using namespace std;
8 
9 namespace mf {
10 
11  MessageFacilityMsg::~MessageFacilityMsg() {}
12 
13  MessageFacilityMsg::MessageFacilityMsg(ErrorObj const& msg)
14  : msg_(new ErrorObj(msg)), empty_(false)
15  {}
16 
18  : msg_(new ErrorObj(ELseverityLevel("INFO"), "")), empty_(true)
19  {}
20 
21  void
23  {
24  msg_->setTimestamp(tv);
25  empty_ = false;
26  }
27 
28  void
30  {
31  msg_->setSeverity(mf::ELseverityLevel(severity));
32  empty_ = false;
33  }
34 
35  void
37  {
38  msg_->setID(category);
39  empty_ = false;
40  }
41 
42  void
44  {
45  msg_->setHostName(hostname);
46  empty_ = false;
47  }
48 
49  void
51  {
52  msg_->setHostAddr(hostaddr);
53  empty_ = false;
54  }
55 
56  void
58  {
59  msg_->setPID(pid);
60  empty_ = false;
61  }
62 
63  void
65  {
66  msg_->setApplication(app);
67  empty_ = false;
68  }
69 
70  void
72  {
73  msg_->setModule(module);
74  empty_ = false;
75  }
76 
77  void
79  {
80  msg_->setIteration(s);
81  empty_ = false;
82  }
83 
84  void
86  {
87  msg_->setIteration(s);
88  empty_ = false;
89  }
90 
91  void
93  string const& line,
94  string const& message)
95  {
96  *msg_ << " " << file << ":" << line << "\n" << message;
97  empty_ = false;
98  }
99 
100  bool
102  {
103  return empty_;
104  }
105 
106  ErrorObj
108  {
109  return *msg_;
110  }
111 
112  timeval
114  {
115  return msg_->timestamp();
116  }
117 
118  // FIXME: The get_time function is gone!
119  string
121  {
122  return mf::timestamp::Legacy::get_time(msg_->timestamp());
123  }
124 
125  string
127  {
128  return msg_->xid().severity().getInputStr();
129  }
130 
131  string
133  {
134  return msg_->xid().id();
135  }
136 
137  string
139  {
140  return msg_->xid().hostname();
141  }
142 
143  string
145  {
146  return msg_->xid().hostaddr();
147  }
148 
149  long
151  {
152  return msg_->xid().pid();
153  }
154 
155  string
157  {
158  return msg_->xid().application();
159  }
160 
161  string
163  {
164  return msg_->xid().module();
165  }
166 
167  string
169  {
170  return msg_->iteration();
171  }
172 
173  string
175  {
176  return msg_->iteration();
177  }
178 
179  // FIXME: We don't put the file in the items any more!
180  string
182  {
183  int idx = 0;
184  for (list<string>::const_iterator it = msg_->items().begin();
185  it != msg_->items().end();
186  ++it) {
187  ++idx;
188  if (idx == 2) {
189  return *it;
190  }
191  }
192  return "";
193  }
194 
195  // FIXME: We don't put the line in the items any more!
196  long
198  {
199  int idx = 0;
200  int line = 0;
201  for (list<string>::const_iterator it = msg_->items().begin();
202  it != msg_->items().end();
203  ++it) {
204  ++idx;
205  if (idx == 4) {
206  istringstream ss(*it);
207  if (ss >> line) {
208  return line;
209  }
210  return 0;
211  }
212  }
213  return 0;
214  }
215 
216  // FIXME: We don't put the file, line in the items any more!
217  string
219  {
220  int idx = 0;
221  string msg;
222  for (list<string>::const_iterator it = msg_->items().begin();
223  it != msg_->items().end();
224  ++it) {
225  ++idx;
226  if (idx > 5) {
227  msg += *it;
228  }
229  }
230  return msg;
231  }
232 
233 } // namespace mf
Float_t s
Definition: plot.C:23
void setApplication(std::string const &)
std::string iteration() const
std::string category() const
void setMessage(std::string const &file, std::string const &line, std::string const &message)
Float_t ss
Definition: plot.C:23
std::string message() const
ErrorObj ErrorObject() const
STL namespace.
void setHostaddr(std::string const &)
void setContext(std::string const &)
void setSeverity(std::string const &)
void setCategory(std::string const &)
intermediate_table::const_iterator const_iterator
void setTimestamp(timeval const &)
std::string context() const
std::string application() const
std::string module() const
void setHostname(std::string const &)
void setModule(std::string const &)
std::string file() const
std::string hostaddr() const
std::string severity() const
void setIteration(std::string const &)
std::string timestr() const
std::unique_ptr< ErrorObj > msg_
std::string hostname() const