View Javadoc

1   package org.rpi.songcast;
2   
3   import java.math.BigInteger;
4   import java.nio.ByteBuffer;
5   import java.util.Arrays;
6   
7   import org.apache.log4j.Logger;
8   
9   public class OHMessage extends SongcastMessage {
10  
11      private Logger log = Logger.getLogger(this.getClass());
12  
13      // public void setData(byte[] data)
14      // {
15      // super.data = data;
16      // }
17  
18      public void checkMessageType() {
19          byte[] type = getBytes(5, 5);
20          StringBuilder sb = new StringBuilder();
21          for (byte b : type) {
22              sb.append(String.format("%02X ", b));
23          }
24          String s = sb.toString().trim();
25          if (s.equalsIgnoreCase("00")) {
26              log.debug("URL Requst");
27          }
28          if (s.equalsIgnoreCase("01")) {
29              log.debug("URL Response");
30              byte[] bHeader = getBytes(0, 7);
31              try {
32                  String header = new String(bHeader, "UTF-8");
33                  log.debug("Header: " + header);
34                  byte[] zl = getBytes(7, 11);
35                  int zoneLength =  new BigInteger(zl).intValue();
36                  byte[] zone = getBytes(16, (16+zoneLength)-1);
37                  String zoneName = new String(zone,"UTF-8");
38                  byte[] uriLength = getBytes(12,15);
39                  int uriL = new BigInteger(uriLength).intValue();
40                  byte[] urlb = getBytes(16+zoneLength, (16+zoneLength + uriL) -1);
41                  String uri = new String(urlb,"UTF-8");
42                  log.debug("Zone Name: " + zoneName + " URL: " + uri);
43              } catch (Exception e) {
44  
45              }
46          }
47  
48          log.debug("Type = " + s);
49      }
50  
51  }