Updating the java applet
diff --git a/.DS_Store b/.DS_Store
index e11c0d5..ea5ac09 100644
--- a/.DS_Store
+++ b/.DS_Store
Binary files differ
diff --git a/java/JavaPlugin.jar b/java/JavaPlugin.jar
new file mode 100644
index 0000000..8fa1090
--- /dev/null
+++ b/java/JavaPlugin.jar
Binary files differ
diff --git a/java/JavaSocketBridge.java b/java/JavaSocketBridge.java
index a8f064d..cb79354 100644
--- a/java/JavaSocketBridge.java
+++ b/java/JavaSocketBridge.java
@@ -5,127 +5,480 @@
import javax.swing.*;
import netscape.javascript.*;
+import java.lang.reflect.InvocationTargetException;
import java.net.*;
+import java.nio.ByteBuffer;
+import java.nio.channels.ClosedChannelException;
+import java.nio.channels.DatagramChannel;
+import java.nio.channels.SelectionKey;
+import java.nio.channels.Selector;
+import java.nio.channels.ServerSocketChannel;
+import java.nio.channels.SocketChannel;
import java.security.AccessController;
import java.security.PrivilegedAction;
+import java.util.Hashtable;
+import java.util.Iterator;
+import java.util.Set;
+import java.util.Timer;
import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.atomic.AtomicInteger;
import java.io.*;
+
+
public class JavaSocketBridge extends JApplet {
- private final static int PACKETSIZE = 3000 ;
+ static String protocol = "TCP";
+
+ static volatile Hashtable<String, SocketChannel> connections = new Hashtable<String, SocketChannel>();
+
+
+
+ volatile String result = "";
+
+ //static ConcurrentHashMap hm = null;
+ static boolean isBrowser = true;
+
+
+
+
+ private final static int PACKETSIZE = 2000 ;
// Instance variables
static JSObject browser = null; // The browser
- static ConcurrentHashMap hm = null;
+ protected Selector _ncReadSelector = null;
+ protected Selector _ncWriteSelector = null;
- // Initialize
+
+ // Initialize automatically called by browser
public void init(){
- browser = JSObject.getWindow(this);
+
+ try{
+ browser = JSObject.getWindow(this);
+ }
+ catch(Exception e){
+ error( "ERROR IN INIT" + e.toString());
+ }
}
- public String connectAndStart(final String ip, final int por, final String interest){
+ //start automatically called by browser
+ public void start(){
+ try {
+ browser.call("java_socket_bridge_ready", null);
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ error("ERROR IN START" +e.toString());
+ }
+
+ }
+
+ public String getOLD(final String h, final int p, final String interest, final int timeout){
return AccessController.doPrivileged(
new PrivilegedAction<String>() {
public String run() {
- DatagramSocket socket = null ;
- byte[] output = null;
- try
- {
- // Convert the arguments first, to ensure that they are valid
- InetAddress host = InetAddress.getByName( ip ) ;
- int port = por ;
+ Socket sock=null;
+ OutputStream out=null;
+ InputStream in=null;
- // Construct the socket
- socket = new DatagramSocket() ;
+ try{
- byte [] data = hex2Byte(interest);
- DatagramPacket packet = new DatagramPacket( data, data.length, host, port ) ;
+ sock=new Socket(h,p);
- // Send it
- socket.send( packet ) ;
- // Set a receive timeout, 2000 milliseconds
- socket.setSoTimeout( 4000 ) ;
+ String word= interest;
- // Prepare the packet for receive
- packet.setData( new byte[PACKETSIZE] ) ;
- // Wait for a response from the server
- socket.receive( packet ) ;
+ in = sock.getInputStream();
- // Print the response
- output = packet.getData() ;
+ out=sock.getOutputStream();
- }
- catch( Exception e )
- {
- error(e.toString());
- System.out.println( e ) ;
- }
- finally
- {
- if( socket != null )
- socket.close() ;
+
+ System.out.println("Your string is"+word);
+
+ out.write(hex2Bytes(word));
+ out.flush();
+ sock.shutdownOutput();
+
+ ByteArrayOutputStream serverinput=new ByteArrayOutputStream();
+
+ int len=0;
+ byte[] buf=new byte[PACKETSIZE];
+ while ((len = in.read(buf))>=0) {
+ serverinput.write(buf, 0, len);
+ }
+
+ String outputString = bytes2Hex(buf);
+
+ System.out.println("Your string is "+word+" converted to byte "+outputString);
+
+ return outputString;
+
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ error(e);
}
- if(output!=null)
- return byte2hex(output);
- else
- return "";
+
+ finally{
+
+ try {
+ sock.close();
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ error(e);
+ }
+
+ }
+
+ return "ERROR";
}
}
+
);
+ }
+
+ public String get(final String h, final int p, final String interest,final int timeout){
+ return AccessController.doPrivileged(
+ new PrivilegedAction<String>() {
+ public String run() {
+ Thread t = new Thread( new Runnable(){
+ public void run(){
+
+ SocketChannel sChannelCloser = null;
+ try{
+
+ final SocketChannel sChannel = open(h,p);
+
+ sChannelCloser=sChannel;
+
+ sChannel.socket().setSoTimeout(timeout);
+
+ ByteBuffer buffer = ByteBuffer.wrap(hex2Bytes(interest));
+
+ System.out.println("WRITING BYTES:"+interest);
+
+ while(buffer.hasRemaining())
+ sChannel.write(buffer);
+
+ ByteBuffer bufferReceiver = ByteBuffer.allocate(PACKETSIZE);
+
+ buffer.clear();
+ sChannel.read(bufferReceiver);
+
+ String output = bytes2Hex(bufferReceiver.array());
+ System.out.println("RECEIVED BYTES:" +output);
+
+ result=output;
+
+ return ;
+
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ error(e);
+ }
+ finally{
+
+ try {
+ sChannelCloser.close();
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ error(e);
+ }
+
+ }
+
+
+
+ //return "STARTED GETTING";
+
+ }
+ }
+
+ );
+
+ t.start();
+
+ Long start = System.currentTimeMillis();
+ Long current = System.currentTimeMillis();
+
+ while(t.isAlive() && current-start < timeout ){
+ try {
+ Thread.sleep(100);
+ } catch (InterruptedException e) {
+ error(e);
+ }
+ current = System.currentTimeMillis();
+ }
+ if(current-start >= timeout){
+ t.stop();
+ return "TIMEOUT EXPIRED";
+ }
+ else{
+ return result;
+
+ }
+
+
+ }
+ }
+
+ );
+ }
+
+
+ // Report an error
+ public static void receivedInterest( String data,String name){
+
+ Object[] arguments = new Object[2];
+ arguments[0] = data;
+ arguments[1] = name;
+
+
+ try {
+ browser.call("on_socket_received_interest", arguments);
+ } catch (JSException e) {
+ // TODO Auto-generated catch block
+ error(e.getMessage());
+ }
}
- public String sendContentObject(final String ip, final int por, final String interest){
+ public String put(final String h, final int p, final String interest,final String name, final String toReturn){
return AccessController.doPrivileged(
new PrivilegedAction<String>() {
public String run() {
- DatagramSocket socket = null ;
- byte[] output = null;
- try
- {
- // Convert the arguments first, to ensure that they are valid
- InetAddress host = InetAddress.getByName( ip ) ;
- int port = por ;
- // Construct the socket
- socket = new DatagramSocket() ;
+ SocketChannel sChannelCloser = null;
+ try{
+
+ final SocketChannel sChannel = open(h,p);
+ sChannelCloser=sChannel;
+
+ //FIRST TIME
+ //ByteBuffer buffer = ByteBuffer.allocateDirect(1024);
+
+ ByteBuffer buffer = ByteBuffer.wrap(hex2Bytes(interest));
+
+ System.out.println("WRITING BYTES:"+interest);
+ while(buffer.hasRemaining())
+ sChannel.write(buffer);
+
+ ByteBuffer bufferReceiver = ByteBuffer.allocate(PACKETSIZE);
+
+ buffer.clear();
+ sChannel.read(bufferReceiver);
+
+ System.out.println("RECEIVED BYTES:" + bytes2Hex(bufferReceiver.array()));
- byte [] data = hex2Byte(interest);
- DatagramPacket packet = new DatagramPacket( data, data.length, host, port ) ;
- // Send it
- socket.send( packet );
+
+ Thread t = new Thread( new Runnable(){
+ public void run(){
+ //sChannel.
+ while(true){
+
+ try{
+
+ ByteBuffer bufferReceiver = ByteBuffer.allocate(PACKETSIZE);
+
+ bufferReceiver.clear();
+ sChannel.read(bufferReceiver);
+
+ String receivedHexBytes = bytes2Hex(bufferReceiver.array());
+
+ System.out.println("RECEIVED BYTES:" + receivedHexBytes);
+
+
+ System.out.println("name is "+name);
+
+ //connections.put(name, sChannel);
+
+ //System.out.println("name is "+name);
+
+ //receivedInterest(receivedHexBytes,name);
+
+
+ //byte[] output = hex2Bytes("048202aa03b208855dea25cca4d3967c774cc6e709a140d91f9d74e97a665cbb106568ee94f998d8b22fbe2b8d2fc43bd9363b501a50f2d770a7882aaf0792c20359f54da27d4a5b5a29be7d349c656e60fd37c92cf4e4aae256af04161e561aa4323512b38799c43d7a2ec4e35c3e19599b12c5ee3a5f0994837461c05c294a8b596f960e9287520000f2faad726f63636f000001a203e2028548398bad0eeb58e9cc64720e84f4947fe1c1eb310055181ed0b4c2d920ef6e590002bab504fcc5336e9c0001e201da0a9530819f300d06092a864886f70d010101050003818d003081890281810092e67426906bae66a3f4910bade5a2d24e2b7ed0d7a3e16f368c258e848f30115f6e95f5e0ee64505ed3da08be6ee599d395f611ffb096a9c258171518f0c6b3612a94681d29e44619227ac268e5d450abac89820d96188f507d15fb40d8780ccb76a012f7ce4f4efe2b8ba431ef993e31da867adffb069003808bceef9ff4d10203010001000000019abd424f4e4a4f55520000");
+
+ byte[] output = hex2Bytes(toReturn);
+
+
+ ByteBuffer outputBuffer = ByteBuffer.wrap(output);
+
+ //byte[] output = hex2Bytes("048202aa03b208857d7f003e50fc79aca1563842832db26c5e313bec0940ce795dd8adc34e7fd2cadee7b44b28737d59c061240da60d0733e2bcc760c7656a0f03b20a987c1a1fb94bb93648243c48fde222bc21b85062f186ffdc15f637cfe83f35ab11e3564e7e83a26de39a0faf3991f469f0f376fca535fb1be28ede72b433547b4977f0f3000000f2faa574657374000001a203e20285189f9df9814d134883758f9c5541ba957a4464d8756f34870cf981143f56779a0002bab504fcbf24f6f60001e201da0a9530819f300d06092a864886f70d010101050003818d0030818902818100c0a2c68770c339ed3152b90cde701ba588652f358854460b36b866c6e76272013232df351f10841ac49e35a6bc644f9c9caacd9aa0cd0e1835a34162c9208049d3f1f893d0b9566854133a763756df45297328d595ba6b6459fd311d5e1c97ce5278fa076dde765090c7221670ad54689958cc5fb46699482c5ac16c301dba1f0203010001000000019abd424f4e4a4f55520000");
+
+ while(outputBuffer.hasRemaining())
+ sChannel.write(outputBuffer);
+
+ System.out.println("SENT BACK SOME DATA");
+
+
+ }
+ catch(Exception e){
+ error(e);
+ try {
+ sChannel.close();
+ } catch (IOException e1) {
+ // TODO Auto-generated catch block
+ error(e1);
+ }
+ System.exit(0);
+
+ }
+ }
+
+ }});
+
+ t.start();
+
+ return "STARTED PUBLISHING";
+
+ //return receivedHexBytes;
+
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ error(e);
+
+ try {
+ System.out.println("CLOSING THE CONNECTION");
+ sChannelCloser.close();
+ } catch (IOException ex) {
+ // TODO Auto-generated catch block
+ error(ex);
+
+ }
}
- catch( Exception e )
- {
- error(e.toString());
- System.out.println( e ) ;
- }
- finally
- {
- if( socket != null )
- socket.close() ;
- }
+ return "FAILURE";
- if(output!=null)
- return byte2hex(output);
- else
- return "";
+
+
}
}
);
+ }
+
+
+
+ public String putAnswer(final String s, final String dataBack){
+
+ final SocketChannel sChannel = connections.get(s);
+
+
+ byte[] output = hex2Bytes(dataBack);
+
+ ByteBuffer outputBuffer = ByteBuffer.wrap(output);
+
+ //byte[] output = hex2Bytes("048202aa03b208857d7f003e50fc79aca1563842832db26c5e313bec0940ce795dd8adc34e7fd2cadee7b44b28737d59c061240da60d0733e2bcc760c7656a0f03b20a987c1a1fb94bb93648243c48fde222bc21b85062f186ffdc15f637cfe83f35ab11e3564e7e83a26de39a0faf3991f469f0f376fca535fb1be28ede72b433547b4977f0f3000000f2faa574657374000001a203e20285189f9df9814d134883758f9c5541ba957a4464d8756f34870cf981143f56779a0002bab504fcbf24f6f60001e201da0a9530819f300d06092a864886f70d010101050003818d0030818902818100c0a2c68770c339ed3152b90cde701ba588652f358854460b36b866c6e76272013232df351f10841ac49e35a6bc644f9c9caacd9aa0cd0e1835a34162c9208049d3f1f893d0b9566854133a763756df45297328d595ba6b6459fd311d5e1c97ce5278fa076dde765090c7221670ad54689958cc5fb46699482c5ac16c301dba1f0203010001000000019abd424f4e4a4f55520000");
+
+
+
+ try{
+ while(outputBuffer.hasRemaining())
+ sChannel.write(outputBuffer);
+
+
+ ByteBuffer bufferReceiver = ByteBuffer.allocate(PACKETSIZE);
+
+ bufferReceiver.clear();
+ sChannel.read(bufferReceiver);
+
+ String receivedHexBytes = bytes2Hex(bufferReceiver.array());
+ System.out.println("RECEIVED BYTES:" + receivedHexBytes);
+
+
+ receivedInterest(receivedHexBytes,s);
+
+ }
+ catch (Exception e) {
+ // TODO Auto-generated catch block
+ error(e);
+
+ try {
+ System.out.println("CLOSING THE CONNECTION");
+ sChannel.close();
+ } catch (IOException ex) {
+ // TODO Auto-generated catch block
+ error(ex);
+ return "FAILURE";
+ }
+ }
+
+ return "SUCCESS";
}
- public static byte[] hex2Byte(String str)
+
+ public SocketChannel open(String host, int ip) throws IOException{
+ // Create a non-blocking socket channel
+ SocketChannel sChannel = SocketChannel.open();
+
+ //sChannel.configureBlocking(false);
+
+ // Send a connection request to the server; this method is non-blocking
+ sChannel.connect(new InetSocketAddress(host, ip));
+
+ // Before the socket is usable, the connection must be completed
+ // by calling finishConnect(), which is non-blocking
+
+ _ncReadSelector = Selector.open();
+ //sChannel.configureBlocking(false);
+ //sChannel.register(_ncReadSelector, SelectionKey.OP_READ);
+ _ncWriteSelector = Selector.open();
+ //sChannel.register(_ncWriteSelector, SelectionKey.OP_WRITE);
+
+
+ while (!sChannel.finishConnect()) {
+ // Do something else
+ System.out.println("TRYING TO CONNECT");
+ }
+ System.out.println("CONNECTED TO " +host +":"+ip);
+
+ return sChannel;
+ }
+
+
+ public static void error(Exception ex){
+ StringWriter sw = new StringWriter();
+ ex.printStackTrace(new PrintWriter(sw));
+ String exceptionAsStrting = sw.toString();
+
+ error(exceptionAsStrting );
+ }
+ // Report an error
+ public static void error(String message){
+
+ System.out.println("RECEIVED AN ERROR");
+ message = "Java Socket Bridge ERROR: " + message;
+ Object[] arguments = new Object[1];
+ arguments[0] = message;
+
+ if(isBrowser){
+ try {
+ browser.call("on_socket_error", arguments);
+ } catch (JSException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ else{
+ System.out.println(message);
+ }
+ }
+
+
+
+
+ // Log something
+ public void log(String message){
+ System.out.println(message);
+ }
+
+
+ public static byte[] hex2Bytes(String str)
{
byte[] bytes = new byte[str.length() / 2];
for (int i = 0; i < bytes.length; i++)
@@ -136,7 +489,7 @@
return bytes;
}
- public static String byte2hex(byte[] b)
+ public static String bytes2Hex(byte[] b)
{
// String Buffer can be used instead
String hs = "";
@@ -165,114 +518,38 @@
}
- // Main
- // Note: This method loops over and over to handle requests becuase only
- // this thread gets the elevated security policy. Java == stupid.
- public void start(){
- try {
- browser.call("java_socket_bridge_ready", null);
- } catch (JSException e) {
- // TODO Auto-generated catch block
- error(e.getMessage());
- }
+ public static void main(String[] args) throws IOException {
- }
+ JavaSocketBridge b = new JavaSocketBridge();
+
+ //System.out.println( b.get("127.0.0.1",9695 ,"01D2F2FAA4657374000000", 1000));
+
+ //System.out.println( b.get("127.0.0.1",9695 ,"01D2F2FAA574657374000000", 1000));
+
+ //System.out.println( b.putSend("127.0.0.1",9695 ,"01d2f2faa563636e7800fa0285e0a01e093968f9740ce7f4361babf5bb05a4e55aaca5e58f73eddeb8e013aa8f00fabd73656c6672656700fa1bf5048202aa03b2088568cf069cdfdedad97ad9358f7e2446ca581eaa22ed9eb4e482fe616b35840533ba4f9d321155d6c34915dff7352de5e60bddb17e32f893cd89056cfd291011a5c3742312a083c2628fed4ddffb04cf51e6860eb1dbd43ff9b59736e62ec1a69218ce0acfdd9da896a617f609c12225f14a63876488b38d3a7b9fc1757d9058470000f20001a203e2028547ab87ece0e191c5e946f839507bc875c63c7032e42c347c135a952e7187c9300002bab504fcb2a6a0250001e201da0a9530819f300d06092a864886f70d010101050003818d003081890281810089b8f8b42d8aa31148d9f2a0c38d3fee7c73f60ea444d08fd886114a689cfe235c49bf9e256489390c19d961aabd5ee6d9e9e133282cd68b046609fe0a81be76c683cb150f3d035231b25745530fc887fbd137d6ef9c05d795fdb78f84eeab6f7dcbd1aa64b3920d96cfe941b66967bb2892baef1995bea231a4dc89c383e8550203010001000000019a0585058a04cabe73656c6672656700f2faad726f63636f000003e20285e0a01e093968f9740ce7f4361babf5bb05a4e55aaca5e58f73eddeb8e013aa8f0004fa8e330003d2d63231343734383336343700000000000002d28e310000",1000));
+
+ //System.out.println( b.putSend("127.0.0.1",9695 ,"01D2F2FAA574657374000000",1000));
- // Report an error
- public static void error(String message){
- message = "Java Socket Bridge ERROR: " + message;
- Object[] arguments = new Object[1];
- arguments[0] = message;
- try {
- browser.call("on_socket_error", arguments);
- } catch (JSException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
+ //System.out.println( b.getSend("127.0.0.1",9695 ,"01D2F2FAA574657374000000", 1000));
- // Report an error
- public static void receivedInterest(String IP,int port, byte[] data){
+ //System.out.println( b.get("localhost",9695 ,"01d2f2fafd",3000));
+
+ //System.out.println( b.get("localhost",9695 ,"01D2F2FAA574657374000",3000));
- Object[] arguments = new Object[3];
- arguments[0] = IP;
- arguments[1] = port;
- arguments[2] = byte2hex( data );
-
- try {
- browser.call("on_socket_received_interest", arguments);
- } catch (JSException e) {
- // TODO Auto-generated catch block
- error(e.getMessage());
- }
-
- }
+ //System.out.println( b.getOLD("localhost",9695 ,"01d2f2fafdc12e4d2e532e6c6f63616c686f737400fabdc12e4d2e53525600faa563636e6400fa9d4b4559000002d28e310000",1000));
- public static void connectAndStartAndPublish()
- {
+ //System.out.println( b.putSend("localhost",9695 ,"01d2f2faa563636e7800fa0285e0a01e093968f9740ce7f4361babf5bb05a4e55aaca5e58f73eddeb8e013aa8f00fabd73656c6672656700fa1bf5048202aa03b208854a18988c72aee624da28e2e1acbccb209b8e89429041985521ed68f95a1c546872fba3d854b1377dc249b6d8ec5935e5069256c97a7f6d8a62e86222ccd2cfe5097aed3fe5ede6732ce191a8680d78e39d0c5058a2b7bb0f0687994e9f045de346b66c46498547a08da1f2f0cdfafba3afdfe7107931935ede79040137ba94a90000f20001a203e202851a4860caa4991e829bcdc9429fb711d52440968d23560726606050bf147acffc0002bab504fcb3f03aa40001e201da0a9530819f300d06092a864886f70d010101050003818d00308189028181008ed27580e3d1c4c67672208665133a1ba12d8ebf5cad8e054571926b3ff0782a04c71703384021a6cefb6616b66cbd8a679b761d69d6373a851546e26f7105510b4c23be9a3c7f2e652e100ecc1471855730659f1477ce4e8504ad1fd8f44116baaeae2ff67eec33abba790157a79bf5039e5a528a471d9d67c94e70117ed7490203010001000000019a0585058a04cabe73656c6672656700f2faad726f63636f000003e20285e0a01e093968f9740ce7f4361babf5bb05a4e55aaca5e58f73eddeb8e013aa8f0004fa8e330003d2d63231343734383336343700000000000002d28e310000", 1000));
- AccessController.doPrivileged(
- new PrivilegedAction<String>() {
- public String run() {
- Thread t = new Thread( new Runnable(){
- public void run(){
+ //b.putSend("localhost",9695 ,"01d2f2faa563636e7800fa0285e0a01e093968f9740ce7f4361babf5bb05a4e55aaca5e58f73eddeb8e013aa8f00fabd73656c6672656700fa1bf5048202aa03b208854a18988c72aee624da28e2e1acbccb209b8e89429041985521ed68f95a1c546872fba3d854b1377dc249b6d8ec5935e5069256c97a7f6d8a62e86222ccd2cfe5097aed3fe5ede6732ce191a8680d78e39d0c5058a2b7bb0f0687994e9f045de346b66c46498547a08da1f2f0cdfafba3afdfe7107931935ede79040137ba94a90000f20001a203e202851a4860caa4991e829bcdc9429fb711d52440968d23560726606050bf147acffc0002bab504fcb3f03aa40001e201da0a9530819f300d06092a864886f70d010101050003818d00308189028181008ed27580e3d1c4c67672208665133a1ba12d8ebf5cad8e054571926b3ff0782a04c71703384021a6cefb6616b66cbd8a679b761d69d6373a851546e26f7105510b4c23be9a3c7f2e652e100ecc1471855730659f1477ce4e8504ad1fd8f44116baaeae2ff67eec33abba790157a79bf5039e5a528a471d9d67c94e70117ed7490203010001000000019a0585058a04cabe73656c6672656700f2faad726f63636f000003e20285e0a01e093968f9740ce7f4361babf5bb05a4e55aaca5e58f73eddeb8e013aa8f0004fa8e330003d2d63231343734383336343700000000000002d28e310000", 1000);
+ //NewTest(54567);
- String message;
- try{
- DatagramSocket serverSocket = new DatagramSocket(9876);
- byte[] receiveData = new byte[1024];
- byte[] sendData = new byte[1024];
- while(true)
- {
- DatagramPacket receivePacket = new DatagramPacket(receiveData, receiveData.length);
- serverSocket.receive(receivePacket);
+ //System.out.println( b.put());
- //String sentence = new String( receivePacket.getData());
-
- //System.out.println("RECEIVED: " + sentence);
-
-
- InetAddress IPAddress = receivePacket.getAddress();
-
- int port = receivePacket.getPort();
-
- byte[] receivedData = receivePacket.getData();
-
- receivedInterest( IPAddress.getHostAddress() , port, receivedData);
-
- //String capitalizedSentence = sentence.toUpperCase();
-
- //DATA PACKET HERE!
-
-
- //sendData = capitalizedSentence.getBytes();
-
- //DatagramPacket sendPacket =
- // new DatagramPacket(sendData, sendData.length, IPAddress, port);
- //serverSocket.send(sendPacket);
- }
- }
- catch(Exception e){
- error("Exception " + e + "FAILURE, ERROR IN SOCKET CONECTION");
- }
-
-
- }
- });
-
- t.start();
- return "SUCCESS";
-
-
- }
-
-
- }
- );
+ //connections.put("meki", SocketChannel.open());
}