Merge "Fixed deserialization of IdentityRefs in Restconf URI."
[controller.git] / opendaylight / md-sal / sal-remoterpc-connector / implementation / src / main / java / org / opendaylight / controller / sal / connector / remoterpc / SocketPair.java
1 package org.opendaylight.controller.sal.connector.remoterpc;
2
3 import org.zeromq.ZMQ;
4
5 import java.util.UUID;
6
7 /**
8  *
9  */
10 public class SocketPair implements AutoCloseable{
11   private ZMQ.Socket sender;
12   private ZMQ.Socket receiver;
13
14   private static final String INPROC_PREFIX = "inproc://";
15
16   public SocketPair(){
17     String address = new StringBuilder(INPROC_PREFIX)
18                          .append(UUID.randomUUID())
19                          .toString();
20
21     receiver = Context.getInstance().getZmqContext().socket(ZMQ.PAIR);
22     receiver.bind(address);
23
24     sender = Context.getInstance().getZmqContext().socket(ZMQ.PAIR);
25     sender.connect(address);
26   }
27
28   public ZMQ.Socket getSender(){
29     return this.sender;
30   }
31
32   public ZMQ.Socket getReceiver(){
33     return this.receiver;
34   }
35
36   @Override
37   public void close() throws Exception {
38     sender.close();
39     receiver.close();
40   }
41 }