当前位置: 首页>>代码示例>>C++>>正文


C++ ActiveMQMapMessage类代码示例

本文整理汇总了C++中ActiveMQMapMessage的典型用法代码示例。如果您正苦于以下问题:C++ ActiveMQMapMessage类的具体用法?C++ ActiveMQMapMessage怎么用?C++ ActiveMQMapMessage使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了ActiveMQMapMessage类的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: bytes1

void ActiveMQMapMessageTest::testGetBytes() {
    ActiveMQMapMessage msg;
    try {

        std::vector<unsigned char> bytes1( 3, 'a' );
        std::vector<unsigned char> bytes2( 2, 'b' );

        msg.setBytes( name, bytes1 );
        msg.setBytes( name + "2", bytes2 );

        ActiveMQMapMessage msg2;
        msg2.copyDataStructure( &msg );

        CPPUNIT_ASSERT( msg2.getBytes( name ) == bytes1 );
        CPPUNIT_ASSERT_EQUAL( msg2.getBytes( name + "2" ).size(), bytes2.size() );

    } catch( CMSException& ex ) {
        ex.printStackTrace();
        CPPUNIT_ASSERT( false );
    }

    ActiveMQMapMessage msg3;
    msg3.setBytes( "empty", std::vector<unsigned char>() );
    CPPUNIT_ASSERT_NO_THROW( msg3.getBytes( "empty" ) );
}
开发者ID:apache,项目名称:activemq-cpp,代码行数:25,代码来源:ActiveMQMapMessageTest.cpp

示例2: testGetByte

void ActiveMQMapMessageTest::testGetByte() {
    ActiveMQMapMessage msg;
    msg.setByte( name, (unsigned char)1 );

    ActiveMQMapMessage msg2;
    msg2.copyDataStructure( &msg );

    CPPUNIT_ASSERT( msg2.getByte( name ) == (unsigned char)1 );
}
开发者ID:apache,项目名称:activemq-cpp,代码行数:9,代码来源:ActiveMQMapMessageTest.cpp

示例3: CPPUNIT_ASSERT

void ActiveMQMapMessageMarshallerTest::test() {

    ActiveMQMapMessageMarshaller myMarshaller;
    ActiveMQMapMessage myCommand;
    ActiveMQMapMessage* myCommand2;

    CPPUNIT_ASSERT( myMarshaller.getDataStructureType() == myCommand.getDataStructureType() );
    myCommand2 = dynamic_cast<ActiveMQMapMessage*>( myMarshaller.createObject() );
    CPPUNIT_ASSERT( myCommand2 != NULL );
    delete myCommand2;
}
开发者ID:WilliamDrewAeroNomos,项目名称:muthur,代码行数:11,代码来源:ActiveMQMapMessageMarshallerTest.cpp

示例4: testItemExists

void ActiveMQMapMessageTest::testItemExists() {
    ActiveMQMapMessage mapMessage;

    mapMessage.setString( "exists", "test" );

    ActiveMQMapMessage mapMessage2;
    mapMessage2.copyDataStructure( &mapMessage );

    CPPUNIT_ASSERT( mapMessage2.itemExists( "exists" ) );
    CPPUNIT_ASSERT( !mapMessage2.itemExists( "doesntExist" ) );
}
开发者ID:apache,项目名称:activemq-cpp,代码行数:11,代码来源:ActiveMQMapMessageTest.cpp

示例5: testGetDouble

void ActiveMQMapMessageTest::testGetDouble() {
    ActiveMQMapMessage msg;
    try {
        msg.setDouble( name, 1.5 );

        ActiveMQMapMessage msg2;
        msg2.copyDataStructure( &msg );

        CPPUNIT_ASSERT( msg2.getDouble( name ) == 1.5 );

    } catch( CMSException& ex ) {
        ex.printStackTrace();
        CPPUNIT_ASSERT( false );
    }
}
开发者ID:apache,项目名称:activemq-cpp,代码行数:15,代码来源:ActiveMQMapMessageTest.cpp

示例6: testGetString

void ActiveMQMapMessageTest::testGetString() {
    ActiveMQMapMessage msg;
    try {
        std::string str = "test";
        msg.setString( name, str );

        ActiveMQMapMessage msg2;
        msg2.copyDataStructure( &msg );

        CPPUNIT_ASSERT( msg2.getString( name ) == str );

    } catch( CMSException& ex ) {
        ex.printStackTrace();
        CPPUNIT_ASSERT( false );
    }
}
开发者ID:apache,项目名称:activemq-cpp,代码行数:16,代码来源:ActiveMQMapMessageTest.cpp

示例7: CPPUNIT_ASSERT

void ActiveMQMapMessageTest::testClearBody() {

    ActiveMQMapMessage mapMessage;
    mapMessage.setString( "String", "String" );
    mapMessage.clearBody();
    CPPUNIT_ASSERT( !mapMessage.isReadOnlyBody() );

    mapMessage.onSend();
    mapMessage.setContent( mapMessage.getContent() );
    CPPUNIT_ASSERT( mapMessage.itemExists( "String" ) == false );
    mapMessage.clearBody();
    mapMessage.setString( "String", "String" );

    ActiveMQMapMessage mapMessage2;
    mapMessage2.copyDataStructure( &mapMessage );

    CPPUNIT_ASSERT( mapMessage2.itemExists( "String" ) );
}
开发者ID:apache,项目名称:activemq-cpp,代码行数:18,代码来源:ActiveMQMapMessageTest.cpp

示例8: openWireFormat

void ActiveMQMapMessageMarshallerTest::testTightMarshal() {

    ActiveMQMapMessageMarshaller marshaller;
    Properties props;
    OpenWireFormat openWireFormat( props );

    // Configure for this test.
    openWireFormat.setVersion( 3 );
    openWireFormat.setTightEncodingEnabled( true );

    ActiveMQMapMessage outCommand;
    ActiveMQMapMessage inCommand;

    Pointer<ProducerId> producerId( new ProducerId() );
    producerId->setConnectionId( "ConnectionId" );
    producerId->setSessionId( 123 );
    producerId->setValue( 42 );

    Pointer<MessageId> messageId( new MessageId() );
    messageId->setBrokerSequenceId( 1 );
    messageId->setProducerSequenceId( 3 );
    messageId->setProducerId( producerId );

    outCommand.setMessageId( messageId );

    try {

        // Marshal the dataStructure to a byte array.
        ByteArrayOutputStream baos;
        DataOutputStream dataOut( &baos );
        // Phase 1 - count the size
        int size = 1;
        BooleanStream bs;
        size += marshaller.tightMarshal1( &openWireFormat, &outCommand, &bs );
        size += bs.marshalledSize();
        // Phase 2 - marshal
        dataOut.writeByte( outCommand.getDataStructureType() );
        bs.marshal( &dataOut );
        marshaller.tightMarshal2( &openWireFormat, &outCommand, &dataOut, &bs );

        // Now read it back in and make sure it's all right.
        std::pair<const unsigned char*, int> array = baos.toByteArray();
        ByteArrayInputStream bais( array.first, array.second, true );
        DataInputStream dataIn( &bais );

        unsigned char dataType = dataIn.readByte();
        CPPUNIT_ASSERT( dataType == outCommand.getDataStructureType() );
        bs.clear();
        bs.unmarshal( &dataIn );
        marshaller.tightUnmarshal( &openWireFormat, &inCommand, &dataIn, &bs );

        CPPUNIT_ASSERT( inCommand.equals( &outCommand ) == true );

    } catch( ActiveMQException& e ) {
        e.printStackTrace();
        CPPUNIT_ASSERT( false );
    } catch( ... ) {
        CPPUNIT_ASSERT( false );
    }
}
开发者ID:WilliamDrewAeroNomos,项目名称:muthur,代码行数:60,代码来源:ActiveMQMapMessageMarshallerTest.cpp

示例9: buffer

void ActiveMQMapMessageTest::testBytesConversion() {

    ActiveMQMapMessage msg;

    std::vector<unsigned char> buffer( 1 );

    msg.setBoolean( "boolean", true );
    msg.setByte( "byte", (unsigned char)1 );
    msg.setBytes( "bytes", buffer );
    msg.setChar( "char", 'a' );
    msg.setDouble( "double", 1.5 );
    msg.setFloat( "float", 1.5f );
    msg.setInt( "int", 1 );
    msg.setLong( "long", 1 );
    msg.setShort( "short", (short)1 );
    msg.setString( "string", "string" );

    // Test with a 1Meg String
    std::string bigString;

    bigString.reserve( 1024 * 1024 );
    for( int i = 0; i < 1024 * 1024; i++ ) {
        bigString += (char)( (int)'a' + i % 26 );
    }

    msg.setString( "bigString", bigString );

    ActiveMQMapMessage msg2;
    msg2.copyDataStructure( &msg );

    CPPUNIT_ASSERT_EQUAL( msg2.getBoolean("boolean"), true);
    CPPUNIT_ASSERT_EQUAL( msg2.getByte( "byte" ), (unsigned char)1 );
    CPPUNIT_ASSERT_EQUAL( msg2.getBytes( "bytes" ).size(), (std::size_t)1 );
    CPPUNIT_ASSERT_EQUAL( msg2.getChar( "char" ), 'a' );
    CPPUNIT_ASSERT_DOUBLES_EQUAL( msg2.getDouble( "double" ), 1.5, 0.01 );
    CPPUNIT_ASSERT_DOUBLES_EQUAL( msg2.getFloat( "float" ), 1.5f, 0.01 );
    CPPUNIT_ASSERT_EQUAL( msg2.getInt( "int" ), 1 );
    CPPUNIT_ASSERT_EQUAL( msg2.getLong( "long" ), 1LL );
    CPPUNIT_ASSERT_EQUAL( msg2.getShort( "short" ), (short)1 );
    CPPUNIT_ASSERT_EQUAL( msg2.getString( "string" ), std::string( "string" ) );
    CPPUNIT_ASSERT_EQUAL( msg2.getString( "bigString" ), bigString );
}
开发者ID:apache,项目名称:activemq-cpp,代码行数:42,代码来源:ActiveMQMapMessageTest.cpp

示例10: testWriteOnlyBody

void ActiveMQMapMessageTest::testWriteOnlyBody() {

    ActiveMQMapMessage msg;

    std::vector<unsigned char> buffer1(1);
    std::vector<unsigned char> buffer2(2);

    msg.setReadOnlyBody( false );

    msg.setBoolean( "boolean", true );
    msg.setByte( "byte", (unsigned char)1 );
    msg.setBytes( "bytes", buffer1 );
    msg.setBytes( "bytes2", buffer2 );
    msg.setChar( "char", 'a' );
    msg.setDouble( "double", 1.5 );
    msg.setFloat( "float", 1.5f );
    msg.setInt( "int", 1 );
    msg.setLong( "long", 1 );
    msg.setShort( "short", (short)1 );
    msg.setString( "string", "string" );

    msg.setReadOnlyBody( true );

    msg.getBoolean( "boolean" );
    msg.getByte( "byte" );
    msg.getBytes( "bytes" );
    msg.getChar( "char" );
    msg.getDouble( "double" );
    msg.getFloat( "float" );
    msg.getInt( "int" );
    msg.getLong( "long" );
    msg.getShort( "short" );
    msg.getString( "string" );
}
开发者ID:apache,项目名称:activemq-cpp,代码行数:34,代码来源:ActiveMQMapMessageTest.cpp

示例11: testReadOnlyBody

void ActiveMQMapMessageTest::testReadOnlyBody() {

    ActiveMQMapMessage msg;
    std::vector<unsigned char> buffer(2);

    msg.setBoolean( "boolean", true );
    msg.setByte( "byte", (unsigned char)1 );
    msg.setBytes( "bytes", buffer );
    msg.setChar( "char", 'a' );
    msg.setDouble( "double", 1.5 );
    msg.setFloat( "float", 1.5f );
    msg.setInt( "int", 1 );
    msg.setLong( "long", 1 );
    msg.setShort( "short", (short)1 );
    msg.setString( "string", "string" );

    msg.setReadOnlyBody( true );

    try {
        msg.getBoolean( "boolean" );
        msg.getByte( "byte" );
        msg.getBytes( "bytes" );
        msg.getChar( "char" );
        msg.getDouble( "double" );
        msg.getFloat( "float" );
        msg.getInt( "int" );
        msg.getLong( "long" );
        msg.getShort( "short" );
        msg.getString( "string" );
    } catch( MessageNotReadableException& mnre ) {
        CPPUNIT_FAIL( "should be readable" );
    }
    try {
        msg.setBoolean( "boolean", true );
        CPPUNIT_FAIL( "should throw exception" );
    } catch( MessageNotWriteableException& mnwe ) {
    }
    try {
        msg.setByte( "byte", (unsigned char)1 );
        CPPUNIT_FAIL( "should throw exception" );
    } catch( MessageNotWriteableException& mnwe ) {
    }
    try {
        msg.setBytes( "bytes", buffer );
        CPPUNIT_FAIL( "should throw exception" );
    } catch( MessageNotWriteableException& mnwe ) {
    }
    try {
        msg.setChar( "char", 'a' );
        CPPUNIT_FAIL( "should throw exception" );
    } catch( MessageNotWriteableException& mnwe ) {
    }
    try {
        msg.setDouble( "double", 1.5 );
        CPPUNIT_FAIL( "should throw exception" );
    } catch( MessageNotWriteableException& mnwe ) {
    }
    try {
        msg.setFloat( "float", 1.5f );
        CPPUNIT_FAIL( "should throw exception" );
    } catch( MessageNotWriteableException& mnwe ) {
    }
    try {
        msg.setInt( "int", 1 );
        CPPUNIT_FAIL( "should throw exception" );
    } catch( MessageNotWriteableException& mnwe ) {
    }
    try {
        msg.setLong( "long", 1 );
        CPPUNIT_FAIL( "should throw exception" );
    } catch( MessageNotWriteableException& mnwe ) {
    }
    try {
        msg.setShort( "short", (short)1 );
        CPPUNIT_FAIL( "should throw exception" );
    } catch( MessageNotWriteableException& mnwe ) {
    }
    try {
        msg.setString( "string", "string" );
        CPPUNIT_FAIL( "should throw exception" );
    } catch( MessageNotWriteableException& mnwe ) {
    }
}
开发者ID:apache,项目名称:activemq-cpp,代码行数:83,代码来源:ActiveMQMapMessageTest.cpp


注:本文中的ActiveMQMapMessage类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。