void sendWhenReady(ConnectionHandler handler)

raw connection need to handle error and resending of data, so it can only send one map at a time a new getData function will always overwrite the previous one; requester and responder should handle the merging of methods

Source

void sendWhenReady(ConnectionHandler handler) {
  this.handler = handler;
  conn.requireSend();
}