Esempio n. 1
0
 def _unpackFrame(self, data):
     s = StringIO(data)
     c = Codec(s)
     frameType = spec.pythonize(self.spec.constants.byid[c.decode_octet()].name)
     channel = c.decode_short()
     payload = Frame.DECODERS[frameType].decode(self.spec, c)
     end = c.decode_octet()
     if end != self.FRAME_END:
         raise GarbageException('frame error: expected %r, got %r' % (self.FRAME_END, end))
     frame = Frame(channel, payload)
     return frame