KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > maverick > multiplex > channels > StreamClientChannel


1 package com.maverick.multiplex.channels;
2
3 import java.io.IOException JavaDoc;
4
5 import org.apache.commons.logging.Log;
6 import org.apache.commons.logging.LogFactory;
7
8 import com.maverick.multiplex.Channel;
9 import com.maverick.multiplex.ChannelOpenException;
10 import com.maverick.util.ByteArrayWriter;
11
12 public class StreamClientChannel extends Channel {
13     final static Log log = LogFactory.getLog(StreamClientChannel.class);
14
15     /**
16      * Channel type identifier
17      */

18     public static final String JavaDoc CHANNEL_TYPE = "stream@3sp.com";
19
20     String JavaDoc id;
21     boolean initiator;
22
23     /**
24      * Constructor.
25      *
26      * @param service service
27      *
28      */

29     public StreamClientChannel(String JavaDoc id, boolean initiator) {
30         this(id, initiator, CHANNEL_TYPE);
31     }
32
33     public StreamClientChannel(String JavaDoc id, boolean initiator, String JavaDoc channelType) {
34         super(channelType, 32768, 32768);
35         this.id = id;
36         this.initiator = initiator;
37     }
38
39     /**
40      * Get the stream ID.
41      *
42      * @return
43      */

44     public String JavaDoc getId() {
45         return id;
46     }
47
48     /*
49      * (non-Javadoc)
50      *
51      * @see com.maverick.multiplex.Channel#open(byte[])
52      */

53     public byte[] open(byte[] data) throws IOException JavaDoc, ChannelOpenException {
54         return null;
55     }
56
57     /*
58      * (non-Javadoc)
59      *
60      * @see com.maverick.multiplex.Channel#onChannelData(byte[], int, int)
61      */

62     public void onChannelData(byte[] buf, int off, int len) {
63     }
64
65     /*
66      * (non-Javadoc)
67      *
68      * @see com.maverick.multiplex.Channel#create()
69      */

70     public byte[] create() throws IOException JavaDoc {
71         ByteArrayWriter baw = new ByteArrayWriter();
72         baw.writeBoolean(initiator);
73         baw.writeString(id);
74         return baw.toByteArray();
75     }
76
77     /*
78      * (non-Javadoc)
79      *
80      * @see com.maverick.multiplex.Channel#onChannelClose()
81      */

82     public void onChannelClose() {
83     }
84
85     public boolean isInitiator() {
86         return initiator;
87     }
88
89     public void onChannelOpen(byte[] data) {
90     }
91 }
92
Popular Tags