CMS 3D CMS Logo

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

Public Member Functions

def __init__ (self, timeout_secs)
 
def handle_read (self)
 
def readable (self)
 
- Public Member Functions inherited from esMonitoring.AsyncLineReaderMixin
def __init__ (self)
 
def handle_close (self)
 
def handle_line (self)
 

Public Attributes

 last_read
 
 timeout_secs
 
- Public Attributes inherited from esMonitoring.AsyncLineReaderMixin
 line_buf
 not needed, since asyncore automatically handles close if len(rbuf) == 0: self.handle_close() return More...
 

Detailed Description

Definition at line 245 of file esMonitoring.py.

Constructor & Destructor Documentation

◆ __init__()

def esMonitoring.AsyncLineReaderTimeoutMixin.__init__ (   self,
  timeout_secs 
)

Definition at line 246 of file esMonitoring.py.

246  def __init__(self, timeout_secs):
247  self.timeout_secs = timeout_secs
248  self.last_read = time.time()
249 
250  super(AsyncLineReaderTimeoutMixin, self).__init__()
251 

Member Function Documentation

◆ handle_read()

def esMonitoring.AsyncLineReaderTimeoutMixin.handle_read (   self)

Reimplemented from esMonitoring.AsyncLineReaderMixin.

Definition at line 252 of file esMonitoring.py.

252  def handle_read(self):
253  self.last_read = time.time()
254  AsyncLineReaderMixin.handle_read(self)
255 

References esMonitoring.AsyncLineReaderTimeoutMixin.last_read.

◆ readable()

def esMonitoring.AsyncLineReaderTimeoutMixin.readable (   self)

Definition at line 256 of file esMonitoring.py.

256  def readable(self):
257  if (time.time() - self.last_read) >= self.timeout_secs:
258  self.last_read = time.time()
259  self.handle_timeout()
260 
261  return super(AsyncLineReaderTimeoutMixin, self).readable()
262 

References ztee.GZipLog.handle_timeout(), esMonitoring.FDOutputListener.handle_timeout(), esMonitoring.AsyncLineReaderTimeoutMixin.last_read, and esMonitoring.AsyncLineReaderTimeoutMixin.timeout_secs.

Member Data Documentation

◆ last_read

esMonitoring.AsyncLineReaderTimeoutMixin.last_read

◆ timeout_secs

esMonitoring.AsyncLineReaderTimeoutMixin.timeout_secs

Definition at line 247 of file esMonitoring.py.

Referenced by esMonitoring.AsyncLineReaderTimeoutMixin.readable().