Membership::Membership(const BrokerInfo& info, HaBroker& b) : haBroker(b), self(info.getSystemId()) { brokers[self] = info; setPrefix(); oldStatus = info.getStatus(); }
void BrokerInfoMarshallerTest::test() { BrokerInfoMarshaller myMarshaller; BrokerInfo myCommand; BrokerInfo* myCommand2; CPPUNIT_ASSERT( myMarshaller.getDataStructureType() == myCommand.getDataStructureType() ); myCommand2 = dynamic_cast<BrokerInfo*>( myMarshaller.createObject() ); CPPUNIT_ASSERT( myCommand2 != NULL ); delete myCommand2; }
void BrokerInfoMarshallerTest::testTightMarshal() { BrokerInfoMarshaller marshaller; Properties props; OpenWireFormat openWireFormat( props ); // Configure for this test. openWireFormat.setVersion( 1 ); openWireFormat.setTightEncodingEnabled( true ); BrokerInfo outCommand; BrokerInfo inCommand; 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 ); } }
QueueGuard::QueueGuard(broker::Queue& q, const BrokerInfo& info) : queue(q), subscription(0) { std::ostringstream os; os << "Primary guard " << queue.getName() << "@" << info.getLogId() << ": "; logPrefix = os.str(); observer.reset(new QueueObserver(*this)); queue.addObserver(observer); // Set range after addObserver so we know that range.back+1 is a guarded position. range = QueueRange(q); }
void Membership::add(const BrokerInfo& b) { Mutex::ScopedLock l(lock); assert(b.getSystemId() != self); brokers[b.getSystemId()] = b; update(true, l); }
void Membership::add(const BrokerInfo& b) { Mutex::ScopedLock l(lock); brokers[b.getSystemId()] = b; update(l); }
Membership::Membership(const BrokerInfo& info, HaBroker& b) : haBroker(b), self(info.getSystemId()) { brokers[self] = info; }
void Membership::add(const BrokerInfo& b) { brokers[b.getSystemId()] = b; }
void Membership::reset(const BrokerInfo& b) { brokers.clear(); brokers[b.getSystemId()] = b; }