Example #1
0
File: base.py Project: D3f0/txscada
 def sendCotainer(self, container):
     """
     Convenience method for publishing when data is sent
     """
     # TODO: Publish COMASTER, STATE, DATA
     assert isinstance(container, Container)
     data = self.construct.build(container)
     self.logger.info("%s >> %s", self.state, upperhexstr(data))
     self.transport.write(data)
Example #2
0
 def sendCotainer(self, container):
     """
     Convenience method for publishing when data is sent
     """
     # TODO: Publish COMASTER, STATE, DATA
     assert isinstance(container, Container)
     data = self.construct.build(container)
     self.logger.info("%s >> %s", self.state, upperhexstr(data))
     self.transport.write(data)
Example #3
0
File: base.py Project: D3f0/txscada
 def dataReceived(self, data):
     """
     Called when data is available. It'll callback the Deferred that are waiting
     for input if it can reasseble a mara frame.
     """
     self.logger.info("%s << %s", self.state, upperhexstr(data))
     # Add data that could be chunked to the buffer
     self.input_buffer += data
     # If a package is ready (has SOF, QTY, ...) then it must be
     # parsed with self.construct reference.
     if self.input_buffer.has_package():
         if self.incomingDefered:
             raw_package_data = self.input_buffer.get_package()
             try:
                 parsed = self.construct.parse(raw_package_data)
             except FieldError:
                 self.incomingDefered.errback(FieldError(raw_package_data))
             else:
                 self.incomingDefered.callback((raw_package_data, parsed))
         else:
             package = self.input_buffer.get_package()
             self.logger.info("Unexpected package %s", upperhexstr(package))
Example #4
0
 def dataReceived(self, data):
     """
     Called when data is available. It'll callback the Deferred that are waiting
     for input if it can reasseble a mara frame.
     """
     self.logger.info("%s << %s", self.state, upperhexstr(data))
     # Add data that could be chunked to the buffer
     self.input_buffer += data
     # If a package is ready (has SOF, QTY, ...) then it must be
     # parsed with self.construct reference.
     if self.input_buffer.has_package():
         if self.incomingDefered:
             raw_package_data = self.input_buffer.get_package()
             try:
                 parsed = self.construct.parse(raw_package_data)
             except FieldError:
                 self.incomingDefered.errback(FieldError(raw_package_data))
             else:
                 self.incomingDefered.callback((raw_package_data, parsed))
         else:
             package = self.input_buffer.get_package()
             self.logger.info("Unexpected package %s", upperhexstr(package))