From reading the documentation, it seems like you must send an array of bytes as the data. That makes sense for cross-program interoperability, but I just want to exchange data within my application. Is it possible to pass an object reference as the data?