List of usage examples for com.rabbitmq.client Channel basicPublish
void basicPublish(String exchange, String routingKey, BasicProperties props, byte[] body) throws IOException;
From source file:joram.amqp.PersistenceSimpleTest.java
License:Open Source License
public void recover1() throws Exception { ConnectionFactory cnxFactory = new ConnectionFactory(); Connection connection = cnxFactory.newConnection(); Channel channel = connection.createChannel(); DeclareOk declareOk = channel.queueDeclare("testqueue", true, false, false, null); channel.txSelect();/*from w w w .j a va 2 s . c o m*/ for (int i = 0; i < 5; i++) { channel.basicPublish("", declareOk.getQueue(), MessageProperties.PERSISTENT_BASIC, "this is a test message !!!".getBytes()); } channel.txCommit(); killAgentServer((short) 0); startAgentServer((short) 0); connection = cnxFactory.newConnection(); channel = connection.createChannel(); declareOk = channel.queueDeclarePassive("testqueue"); for (int i = 0; i < 5; i++) { GetResponse msg = channel.basicGet("testqueue", true); assertNotNull(msg); assertEquals("this is a test message !!!", new String(msg.getBody())); } GetResponse msg = channel.basicGet("testqueue", true); assertNull(msg); channel.queueDelete(declareOk.getQueue()); }
From source file:joram.amqp.PersistenceSimpleTest.java
License:Open Source License
public void recover2() throws Exception { ConnectionFactory cnxFactory = new ConnectionFactory(); Connection connection = cnxFactory.newConnection(); Channel channel = connection.createChannel(); DeclareOk declareOk = channel.queueDeclare("testqueue", true, false, false, null); channel.txSelect();//from w w w . j a va 2s .com for (int i = 0; i < 5; i++) { channel.basicPublish("", declareOk.getQueue(), MessageProperties.PERSISTENT_BASIC, "this is a test message !!!".getBytes()); } channel.txCommit(); killAgentServer((short) 0); startAgentServer((short) 0); Thread.sleep(500); connection = cnxFactory.newConnection(); channel = connection.createChannel(); declareOk = channel.queueDeclarePassive("testqueue"); QueueingConsumer consumer = new QueueingConsumer(channel); channel.basicConsume(declareOk.getQueue(), true, consumer); for (int i = 0; i < 5; i++) { Delivery msg = consumer.nextDelivery(1000); assertNotNull(msg); assertEquals("this is a test message !!!", new String(msg.getBody())); } Delivery msg = consumer.nextDelivery(1000); assertNull(msg); channel.queueDelete(declareOk.getQueue()); }
From source file:joram.bridgeamqp.AMQPSender.java
License:Open Source License
public void run() { ConnectionFactory cnxFactory = null; Connection connection = null; Channel channel = null; try {//from www. j a va 2 s. c om cnxFactory = new ConnectionFactory(); connection = cnxFactory.newConnection(); channel = connection.createChannel(); // channel.queueDeclare(queue, true, false, false, null); } catch (Exception exc) { exc.printStackTrace(); return; } System.out.println(SenderId + " starts"); // Convert message properties AMQP.BasicProperties props = new AMQP.BasicProperties(); if (persistent) { props.setDeliveryMode(Integer.valueOf(org.objectweb.joram.shared.messages.Message.PERSISTENT)); } else { props.setDeliveryMode(Integer.valueOf(org.objectweb.joram.shared.messages.Message.NON_PERSISTENT)); } props.setCorrelationId(null); props.setPriority(4); props.setType(String.valueOf(org.objectweb.joram.shared.messages.Message.TEXT)); props.setExpiration("0"); try { for (int i = 0; i < nbmsgs; i++) { props.setTimestamp(new Date()); props.setMessageId(SenderId + i); channel.basicPublish("", queue, props, getBody("Message number " + i)); if (delay > 0) Thread.sleep(delay); } } catch (Exception exc) { exc.printStackTrace(); } finally { try { System.out.println(SenderId + " stops"); connection.close(); } catch (IOException exc) { exc.printStackTrace(); } } }
From source file:loanbroker.Aggregator.java
private void send(entity.Message m, String routingKey) throws IOException, TimeoutException, InterruptedException { ConnectionFactory factory = new ConnectionFactory(); factory.setHost(hostName);// w w w . ja v a 2s . c o m factory.setPort(5672); factory.setUsername("student"); factory.setPassword("cph"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.exchangeDeclare(ExchangeName.GLOBAL, "direct"); //creating LoanResponse object LoanResponse lp = new LoanResponse(parseInt(m.getSsn()), m.getCreditScore(), m.getLoanDuration(), ""); Gson gson = new GsonBuilder().create(); String fm = gson.toJson(lp); BasicProperties props = new BasicProperties.Builder().build(); channel.basicPublish(ExchangeName.GLOBAL, routingKey, props, fm.getBytes()); System.out.println(" [x] Sent '" + ExchangeName.GLOBAL + routingKey + "':'" + fm + "'"); channel.close(); connection.close(); }
From source file:loanbroker.GetCreditScore.java
public void send(entity.Message creditScoreMessage) throws IOException, TimeoutException, Exception { ConnectionFactory connfac = new ConnectionFactory(); connfac.setHost(hostName);//w ww . ja v a 2s . c o m connfac.setPort(5672); connfac.setUsername("student"); connfac.setPassword("cph"); Gson gson = new GsonBuilder().create(); String fm = gson.toJson(creditScoreMessage); Connection connection = connfac.newConnection(); Channel channel = connection.createChannel(); channel.exchangeDeclare(ExchangeName.OUTPUT_GET_CREDITSCORE, "fanout"); channel.basicPublish(ExchangeName.OUTPUT_GET_CREDITSCORE, "", null, fm.getBytes()); System.out.println(" [x] Sent '" + fm.toString() + "'"); channel.close(); connection.close(); }
From source file:loanbroker.normalizer.CallTeachersJsonBank.java
public static void main(String[] args) { Gson gson = new Gson(); DtoJsonBank jsonBank = null;/*from w w w.j a v a 2 s .c om*/ try { ConnectionFactory factory = new ConnectionFactory(); factory.setHost("datdb.cphbusiness.dk"); factory.setPort(5672); factory.setUsername("student"); factory.setPassword("cph"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.exchangeDeclare(EXCHANGE_NAME, "fanout"); //reply String corrId = java.util.UUID.randomUUID().toString(); BasicProperties props = new BasicProperties.Builder().correlationId("test1122").replyTo(replyQueueName) .build(); String message = gson.toJson(new DtoJsonBank("1605789787", 598, 10.0, "")); channel.basicPublish(EXCHANGE_NAME, "", props, message.getBytes()); channel.close(); connection.close(); } catch (IOException | TimeoutException e) { e.printStackTrace(); } }
From source file:loanbroker.normalizer.NormalizerOurJsonBank.java
public static void main(String[] args) { try {//from w ww . j av a2 s . c o m ConnectionFactory factory = new ConnectionFactory(); factory.setHost("datdb.cphbusiness.dk"); factory.setPort(5672); factory.setUsername("student"); factory.setPassword("cph"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.exchangeDeclare(EXCHANGE_NAME, "fanout"); String queueName = channel.queueDeclare().getQueue(); channel.queueBind(queueName, EXCHANGE_NAME, ""); //channel.queueDeclare(RPC_QUEUE_NAME,false, false, false, null); System.out.println(" [*] Waiting for messages. To exit press CTRL+C"); QueueingConsumer consumer = new QueueingConsumer(channel); channel.basicConsume(queueName, true, consumer); //producer Channel channelOutput = connection.createChannel(); channelOutput.exchangeDeclare(ExchangeName.GLOBAL, "direct"); String queueNameProducer = channelOutput.queueDeclare().getQueue(); channelOutput.queueBind(queueNameProducer, ExchangeName.GLOBAL, RoutingKeys.NormalizerToAggregator); LoanResponse loanResponse; while (true) { System.out.println("Reading"); QueueingConsumer.Delivery delivery = consumer.nextDelivery(); System.out.println("CorrelationId: " + delivery.getProperties().getCorrelationId()); String message = new String(delivery.getBody()); JSONObject jsonObj = new JSONObject(message); loanResponse = new LoanResponse(jsonObj.getInt("ssn"), Math.ceil(jsonObj.getDouble("interestRate")), "Our Json Bank", delivery.getProperties().getCorrelationId()); System.out.println("renter: " + loanResponse.getInterestRate()); System.out.println("ssn: " + loanResponse.getSsn()); System.out.println("bank : " + loanResponse.getBank()); System.out.println("JSON:" + loanResponse); System.out.println("TOstring:" + jsonObj.toString()); Gson g = new Gson(); String fm = g.toJson(loanResponse); channelOutput.basicPublish(ExchangeName.GLOBAL, RoutingKeys.NormalizerToAggregator, null, fm.getBytes()); } } catch (IOException | TimeoutException | InterruptedException e) { e.printStackTrace(); } }
From source file:loanbroker.normalizer.NormalizerOurSoapXmlBank.java
public static void main(String[] argv) throws IOException, InterruptedException, TimeoutException { //Connection/*from w w w. j ava 2 s . c o m*/ ConnectionFactory factory = new ConnectionFactory(); factory.setHost("datdb.cphbusiness.dk"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); //Consumer channel.exchangeDeclare(EXCHANGE_NAME, "fanout"); String queueName = channel.queueDeclare().getQueue(); //s channel.queueBind(queueName, EXCHANGE_NAME, "OurSoapXmlBank"); channel.queueBind(queueName, EXCHANGE_NAME, ""); QueueingConsumer consumer = new QueueingConsumer(channel); channel.basicConsume(queueName, true, consumer); System.out.println(" [*] Waiting for messages. To exit press CTRL+C"); //Producer Channel channelOutput = connection.createChannel(); channelOutput.exchangeDeclare("TeamFirebug", "direct"); LoanResponse loanResponse; DtoOurSoapXmlBank dtoOurSoapXmlBank; while (true) { QueueingConsumer.Delivery delivery = consumer.nextDelivery(); String message = new String(delivery.getBody()); String routingKey = delivery.getEnvelope().getRoutingKey(); dtoOurSoapXmlBank = JAXB.unmarshal(new StringReader(message), DtoOurSoapXmlBank.class); loanResponse = new LoanResponse(dtoOurSoapXmlBank.getSsn(), dtoOurSoapXmlBank.getInterestRate(), "Our Soap Xml bank", delivery.getProperties().getCorrelationId()); // loanResponse.setBank(routingKey); System.out.println("renter: " + loanResponse.getInterestRate()); System.out.println("ssn: " + loanResponse.getSsn()); System.out.println("bank : " + loanResponse.getBank()); JSONObject jsonObj = new JSONObject(loanResponse); // channelOutput.basicPublish("", RoutingKeys.Aggregator, null, jsonObj.toString().getBytes()); channelOutput.basicPublish("TeamFirebug", "normalizerToAggregator", null, jsonObj.toString().getBytes()); } }
From source file:loanbroker.normalizer.NormalizerTeachersJsonBank.java
public static void main(String[] args) { try {/*from ww w . j a va 2s. com*/ ConnectionFactory factory = new ConnectionFactory(); factory.setHost("datdb.cphbusiness.dk"); factory.setPort(5672); factory.setUsername("student"); factory.setPassword("cph"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.exchangeDeclare(EXCHANGE_NAME, "fanout"); //String queueName = channel.queueDeclare().getQueue(); //channel.queueBind(queueName, EXCHANGE_NAME, ""); channel.queueDeclare(RPC_QUEUE_NAME, false, false, false, null); System.out.println(" [*] Waiting for messages. To exit press CTRL+C"); QueueingConsumer consumer = new QueueingConsumer(channel); channel.basicConsume(RPC_QUEUE_NAME, true, consumer); //producer Channel channelOutput = connection.createChannel(); channelOutput.exchangeDeclare(ExchangeName.GLOBAL, "direct"); String queueName = channelOutput.queueDeclare().getQueue(); channelOutput.queueBind(queueName, ExchangeName.GLOBAL, "normalizerToAggregator"); LoanResponse loanResponse; while (true) { System.out.println("Reading"); QueueingConsumer.Delivery delivery = consumer.nextDelivery(); System.out.println("CorrelationId: " + delivery.getProperties().getCorrelationId()); String message = new String(delivery.getBody()); JSONObject jsonObj = new JSONObject(message); loanResponse = new LoanResponse(jsonObj.getInt("ssn"), jsonObj.getDouble("interestRate"), "Teachers Json Bank", delivery.getProperties().getCorrelationId()); System.out.println("renter: " + loanResponse.getInterestRate()); System.out.println("ssn: " + loanResponse.getSsn()); System.out.println("bank : " + loanResponse.getBank()); // System.out.println(" [x] Received '" + message + "'"); System.out.println("JSON:" + loanResponse); System.out.println("TOstring:" + jsonObj.toString()); Gson g = new Gson(); String fm = g.toJson(loanResponse); channelOutput.basicPublish("TeamFirebug", "normalizerToAggregator", null, fm.getBytes()); } } catch (IOException | TimeoutException | InterruptedException e) { e.printStackTrace(); } }
From source file:loanbroker.normalizer.NormalizerTeachersXmlBank.java
public static void main(String[] argv) throws IOException, InterruptedException, TimeoutException { //Connection// w w w . j av a2 s .c o m ConnectionFactory factory = new ConnectionFactory(); factory.setHost("datdb.cphbusiness.dk"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); //Consumer channel.exchangeDeclare(EXCHANGE_NAME, "fanout"); //String queueName = channel.queueDeclare().getQueue(); //s channel.queueBind(queueName, EXCHANGE_NAME, "OurSoapXmlBank"); channel.queueDeclare(RPC_QUEUE_NAME, false, false, false, null); QueueingConsumer consumer = new QueueingConsumer(channel); channel.basicConsume(RPC_QUEUE_NAME, true, consumer); System.out.println(" [*] Waiting for messages. To exit press CTRL+C"); //Producer Channel channelOutput = connection.createChannel(); channelOutput.exchangeDeclare("TeamFirebug", "direct"); while (true) { System.out.println("Reading"); QueueingConsumer.Delivery delivery = consumer.nextDelivery(); String message = new String(delivery.getBody()); String routingKey = delivery.getEnvelope().getRoutingKey(); DtoTeachersXmlBank dtoOurSoapXmlBank = JAXB.unmarshal(new StringReader(message), DtoTeachersXmlBank.class); LoanResponse loanResponse = new LoanResponse(dtoOurSoapXmlBank.getSsn(), dtoOurSoapXmlBank.getInterestRate(), "Teachers Xml Bank", delivery.getProperties().getCorrelationId()); // loanResponse.setBank(routingKey); System.out.println("CorrelationId: " + delivery.getProperties().getCorrelationId()); System.out.println("renter: " + loanResponse.getInterestRate()); System.out.println("ssn: " + loanResponse.getSsn()); System.out.println("bank : " + loanResponse.getBank()); JSONObject jsonObj = new JSONObject(loanResponse); System.out.println("JSON:" + jsonObj); // channelOutput.basicPublish("", RoutingKeys.Aggregator, null, jsonObj.toString().getBytes()); channelOutput.basicPublish("TeamFirebug", "normalizerToAggregator", null, jsonObj.toString().getBytes()); delivery = null; } }