Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/examples/java/reactor/pom.xml b/examples/java/reactor/pom.xml
- index d5ad187..91a398d 100644
- --- a/examples/java/reactor/pom.xml
- +++ b/examples/java/reactor/pom.xml
- @@ -33,6 +33,12 @@
- <artifactId>proton-j</artifactId>
- <version>${project.parent.version}</version>
- </dependency>
- +
- + <dependency>
- + <groupId>org.bouncycastle</groupId>
- + <artifactId>bcpkix-jdk15on</artifactId>
- + <version>1.47</version>
- + </dependency>
- </dependencies>
- <scm>
- diff --git a/examples/java/reactor/src/main/java/org/apache/qpid/proton/example/reactor/Send.java b/examples/java/reactor/src/main/java/org/apache/qpid/proton/example/reactor/Send.java
- index 22da720..e47b36b 100644
- --- a/examples/java/reactor/src/main/java/org/apache/qpid/proton/example/reactor/Send.java
- +++ b/examples/java/reactor/src/main/java/org/apache/qpid/proton/example/reactor/Send.java
- @@ -26,13 +26,18 @@ import java.nio.BufferOverflowException;
- import org.apache.qpid.proton.Proton;
- import org.apache.qpid.proton.amqp.messaging.AmqpValue;
- +import org.apache.qpid.proton.amqp.messaging.Source;
- +import org.apache.qpid.proton.amqp.messaging.Target;
- import org.apache.qpid.proton.amqp.transport.ErrorCondition;
- import org.apache.qpid.proton.engine.BaseHandler;
- import org.apache.qpid.proton.engine.Connection;
- import org.apache.qpid.proton.engine.Delivery;
- import org.apache.qpid.proton.engine.Event;
- +import org.apache.qpid.proton.engine.Sasl;
- import org.apache.qpid.proton.engine.Sender;
- import org.apache.qpid.proton.engine.Session;
- +import org.apache.qpid.proton.engine.SslDomain;
- +import org.apache.qpid.proton.engine.Transport;
- import org.apache.qpid.proton.message.Message;
- import org.apache.qpid.proton.reactor.Handshaker;
- import org.apache.qpid.proton.reactor.Reactor;
- @@ -46,6 +51,12 @@ public class Send extends BaseHandler {
- private final Message message;
- private int nextTag = 0;
- + private String basedir = ...path.to.config.dir...;
- + private String certificatePemFile = basedir + "client.crt";
- + private String privateKeyPemFile = basedir + "client-private-key.pem";
- + private String privateKeyPassword = ...password...;
- + private String trustPemFile = basedir + "ca.crt";
- +
- private SendHandler(String hostname, Message message) {
- this.hostname = hostname;
- this.message = message;
- @@ -70,12 +81,35 @@ public class Send extends BaseHandler {
- // the events go to its parent connection. If the connection
- // doesn't have a handler, the events go to the reactor.
- Sender snd = ssn.sender("sender");
- +
- + Target target = new Target();
- + target.setAddress("queue");
- + snd.setTarget(target );
- + snd.setSource(new Source());
- +
- conn.open();
- ssn.open();
- snd.open();
- }
- @Override
- + public void onConnectionBound(Event event) {
- + Transport transport = event.getTransport();
- +
- + Sasl sasl = transport.sasl();
- + sasl.setMechanisms("EXTERNAL");
- +
- + SslDomain domain = SslDomain.Factory.create();
- + domain.init(SslDomain.Mode.CLIENT);
- + domain.setCredentials(certificatePemFile, privateKeyPemFile, privateKeyPassword);
- + domain.setTrustedCaDb(trustPemFile);
- +
- + domain.setPeerAuthentication(SslDomain.VerifyMode.VERIFY_PEER);
- +
- + transport.ssl(domain);
- + }
- +
- + @Override
- public void onLinkFlow(Event event) {
- Sender snd = (Sender)event.getLink();
- if (snd.getCredit() > 0) {
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement