public function write(&$obj, IProtocolFormatter $writer)
 {
     $writer->directWriteString(is_null($obj->getResponseURI()) ? "null" : $obj->getResponseURI());
     $writer->directWriteString(is_null($obj->getServiceURI()) ? "null" : $obj->getServiceURI());
     $writer->directWriteInt(-1);
     $writer->resetReferenceCache();
     $writer->beginWriteBodyContent();
     MessageWriter::writeObject($obj->getResponseDataObject(), $writer);
     $writer->endWriteBodyContent();
 }
 public function write(&$obj, IProtocolFormatter $writer)
 {
     $writer->directWriteString($obj->getName());
     $writer->directWriteBoolean($obj->getMustUnderstand());
     $writer->directWriteInt(-1);
     MessageWriter::writeObject($obj->getValue(), $writer);
 }