CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
esMonitoring.AsyncLineReaderMixin Class Reference
Inheritance diagram for esMonitoring.AsyncLineReaderMixin:
esMonitoring.AsyncLineReaderTimeoutMixin esMonitoring.FDJsonHandler esMonitoring.FDOutputListener

Public Member Functions

def __init__ (self)
 
def handle_close (self)
 
def handle_line (self)
 
def handle_read (self)
 

Public Attributes

 line_buf
 not needed, since asyncore automatically handles close if len(rbuf) == 0: self.handle_close() return More...
 

Detailed Description

Definition at line 208 of file esMonitoring.py.

Constructor & Destructor Documentation

◆ __init__()

def esMonitoring.AsyncLineReaderMixin.__init__ (   self)

Definition at line 209 of file esMonitoring.py.

209  def __init__(self):
210  self.line_buf = []
211 

Member Function Documentation

◆ handle_close()

def esMonitoring.AsyncLineReaderMixin.handle_close (   self)

Reimplemented in esMonitoring.FDOutputListener.

Definition at line 212 of file esMonitoring.py.

212  def handle_close(self):
213  # closing fd
214  if len(self.line_buf):
215  self.handle_line("".join(self.line_buf))
216  self.line_buf = []
217 
218  self.close()
219 

References RemoteFile.close(), StorageAccount.close, AlignmentCorrelationsIO.close(), AlignmentParametersIO.close(), AlignmentCorrelationsIORoot.close(), trklet::HistBase.close(), l1tpf_impl::COEFile.close(), AlignmentUserVariablesIO.close(), AlignableDataIO.close(), RawFile.close(), evf::EvFOutputEventWriter.close(), IOChannel.close(), AlignableDataIORoot.close(), LStoreFile.close(), DavixFile.close(), binary_ifstream.close(), binary_ofstream.close(), DCacheFile.close(), LocalCacheFile.close(), MuonErrorMatrix.close(), AlignmentParametersIORoot.close(), OutputFile.close(), StorageAccountProxy.close(), HIPUserVariablesIORoot.close(), ALIFileIn.close(), XrdFile.close(), looper.Setup.close(), File.close(), cond::persistency::SessionImpl.close(), Storage.close(), cond::persistency::PayloadReader.close(), L1GtVhdlTemplateFile.close(), StreamerOutputFile.close(), L1GtPatternWriter.close(), MillePedeVariablesIORoot.close(), DTTPGLutFile.close(), L1TriggerLutFile.close(), cond::persistency::Session.close(), edm::RootOutputTree.close(), DQM.DQMReader.close(), edm::FileBlock.close(), edm::RootTree.close(), cond::CSScopedSession.close(), edm::RootFile.close(), cond::persistency::TransactionScope.close(), esMonitoring.AsyncLineReaderMixin.handle_line(), join(), and esMonitoring.AsyncLineReaderMixin.line_buf.

◆ handle_line()

def esMonitoring.AsyncLineReaderMixin.handle_line (   self)

Definition at line 241 of file esMonitoring.py.

241  def handle_line(self):
242  # override this!
243  pass
244 

Referenced by esMonitoring.AsyncLineReaderMixin.handle_close(), and esMonitoring.AsyncLineReaderMixin.handle_read().

◆ handle_read()

def esMonitoring.AsyncLineReaderMixin.handle_read (   self)

Reimplemented in esMonitoring.AsyncLineReaderTimeoutMixin.

Definition at line 220 of file esMonitoring.py.

220  def handle_read(self):
221  rbuf = self.recv(1024*16)
222 
226 
227  self.line_buf.append(rbuf)
228  if "\n" in rbuf:
229  # split whatever we have
230  spl = "".join(self.line_buf).split("\n")
231 
232  while len(spl) > 1:
233  line = spl.pop(0)
234  self.handle_line(line + "\n")
235 
236  if len(spl[0]):
237  self.line_buf = [spl[0]]
238  else:
239  self.line_buf = []
240 

References mps_setup.append, esMonitoring.AsyncLineReaderMixin.handle_line(), join(), esMonitoring.AsyncLineReaderMixin.line_buf, and cms::dd.split().

Member Data Documentation

◆ line_buf

esMonitoring.AsyncLineReaderMixin.line_buf

not needed, since asyncore automatically handles close if len(rbuf) == 0: self.handle_close() return

Definition at line 210 of file esMonitoring.py.

Referenced by esMonitoring.AsyncLineReaderMixin.handle_close(), and esMonitoring.AsyncLineReaderMixin.handle_read().

join
static std::string join(char **cmd)
Definition: RemoteFile.cc:17
cms::dd::split
std::vector< std::string_view > split(std::string_view, const char *)
mps_setup.append
append
Definition: mps_setup.py:85