/* */ #include "PortMessage.h" #include "PeerMessageUtil.h" #include "DlAbortEx.h" PortMessage* PortMessage::create(const char* data, int dataLength) { if(dataLength != 3) { throw new DlAbortEx("invalid payload size for %s, size = %d. It should be %d", "port", dataLength, 3); } int id = PeerMessageUtil::getId(data); if(id != ID) { throw new DlAbortEx("invalid ID=%d for %s. It should be %d.", id, "piece", ID); } PortMessage* portMessage = new PortMessage(); portMessage->setPort(PeerMessageUtil::getShortIntParam(data, 1)); return portMessage; }