version 1.9, 2006/11/07 21:30:36
|
version 1.14, 2008/08/28 17:24:36
|
|
|
// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION | // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION |
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
// | // |
//============================================================================== |
//============================================================================= |
// | // |
//%///////////////////////////////////////////////////////////////////////////// |
//%//////////////////////////////////////////////////////////////////////////// |
| |
#include <Pegasus/Common/CIMMessageSerializer.h> | #include <Pegasus/Common/CIMMessageSerializer.h> |
#include <Pegasus/Common/CIMMessageDeserializer.h> | #include <Pegasus/Common/CIMMessageDeserializer.h> |
|
|
} | } |
catch (Exception & e) | catch (Exception & e) |
{ | { |
PEG_TRACE_STRING (TRC_OS_ABSTRACTION, Tracer::LEVEL2, |
PEG_TRACE((TRC_OS_ABSTRACTION, Tracer::LEVEL2, |
"Failed to serialize message: " + e.getMessage ()); |
"Failed to serialize message: %s", |
|
(const char*)e.getMessage().getCString())); |
PEG_METHOD_EXIT (); | PEG_METHOD_EXIT (); |
throw; | throw; |
} | } |
|
|
// | // |
// Write the serialized message to the pipe | // Write the serialized message to the pipe |
// | // |
Status writeStatus; |
|
try |
|
{ |
|
Uint32 messageLength = messageBuffer.size (); | Uint32 messageLength = messageBuffer.size (); |
const char * messageData = messageBuffer.getData (); | const char * messageData = messageBuffer.getData (); |
| |
writeStatus = writeBuffer ((const char *) &messageLength, |
Status writeStatus = |
sizeof (Uint32)); |
writeBuffer((const char*) &messageLength, sizeof(Uint32)); |
| |
if (writeStatus == STATUS_SUCCESS) | if (writeStatus == STATUS_SUCCESS) |
{ | { |
writeStatus = writeBuffer (messageBuffer.getData (), |
writeStatus = writeBuffer(messageData, messageLength); |
messageLength); |
|
} |
|
} |
|
catch (...) |
|
{ |
|
PEG_METHOD_EXIT (); |
|
throw; |
|
} | } |
| |
PEG_METHOD_EXIT (); | PEG_METHOD_EXIT (); |
|
|
// | // |
// De-serialization failed | // De-serialization failed |
// | // |
PEG_TRACE_STRING (TRC_OS_ABSTRACTION, Tracer::LEVEL2, |
PEG_TRACE ((TRC_OS_ABSTRACTION, Tracer::LEVEL2, |
"Failed to de-serialize message: " + e.getMessage ()); |
"Failed to de-serialize message: %s", |
|
(const char*)e.getMessage().getCString())); |
PEG_METHOD_EXIT (); | PEG_METHOD_EXIT (); |
throw; | throw; |
} | } |