| 1 package com.ubermq.jms.client.unicast; 2 3 import com.ubermq.jms.client.*; 4 import com.ubermq.kernel.*; 5 6 import com.ubermq.jms.client.impl.AbstractClientSession; 7 import java.io.IOException ; 8 import java.nio.channels.Pipe ; 9 10 public class PipeSession 11 extends AbstractClientSession 12 implements IClientSession 13 { 14 private IDatagramFactory factory; 15 16 20 public PipeSession(IDatagramFactory f) 21 throws java.io.IOException  22 { 23 super(); 24 this.factory = f; 25 } 26 27 38 public IConnectionInfo connect(javax.jms.Connection cxn, 39 ConnectionDescriptor descriptor, 40 IMessageProcessor proc) throws IOException  41 { 42 PipeConnection.ObjectConnectionDescriptor ocd = (PipeConnection.ObjectConnectionDescriptor)descriptor; 43 44 Pipe toserver = Pipe.open(), fromserver = Pipe.open(); 46 ocd.s.connectPipes(toserver, fromserver, factory); 47 48 IConnectionInfo connInfo = new PipeConnectionInfo(fromserver.source(), 50 toserver.sink(), 51 factory, 52 proc); 53 54 proc.accept(connInfo); 56 return connInfo; 57 } 58 } 59 | Popular Tags |