Pastebin launched a little side project called VERYVIRAL.com, check it out ;-) Want more features on Pastebin? Sign Up, it's FREE!
Guest

JAVA EXCEPTION THROW

By: a guest on Nov 2nd, 2012  |  syntax: Java  |  size: 1.36 KB  |  views: 28  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. public class ServerSend2 implements Runnable{
  2.         public Thread thread;
  3.         private ObjectOutputStream oos;
  4.         private String user;
  5.         private String dirpath;
  6.         private Path dir;
  7.         public ServerSend2(ObjectOutputStream oos, String user){
  8.                 this.oos = oos;
  9.                 this.user = user;
  10.                 dirpath = "/home/g0lem/Studium/Semester III/ProgPrak/system/db/"+user;
  11.                 dir = Paths.get(dirpath);
  12.                 thread = new Thread(this);
  13.         }
  14.         public void run(){
  15.                 start();
  16.         }
  17.         public void start(){
  18.                 try{
  19.  
  20.                    WatchService watcher = FileSystems.getDefault().newWatchService();
  21.                    WatchKey key = dir.register(watcher,ENTRY_CREATE);
  22.                    while(oos != null){
  23.                         try {
  24.                                 key = watcher.take();
  25.                         }
  26.                         catch (InterruptedException x) {
  27.                                 return;
  28.                         }
  29.  
  30.                         for (WatchEvent<?> event: key.pollEvents()) {
  31.                                 WatchEvent.Kind<?> kind = event.kind();
  32.                                        
  33.                                 if (kind == OVERFLOW) {
  34.                                         continue;
  35.                                 }
  36.                                 WatchEvent<Path> ev = (WatchEvent<Path>)event;
  37.                                 Path filename = ev.context();
  38.                                 String t = filename.toString();
  39.                                 FileInputStream fileStream = new FileInputStream(dirpath+"/"+t);
  40.                                 ObjectInputStream ois = new ObjectInputStream(fileStream);
  41.                                 Object toSend = ois.readObject();
  42.                                         oos.writeObject(toSend);
  43.                         }
  44.                 // Reset the key
  45.                         boolean valid = key.reset();
  46.                         if (!valid) {
  47.                         break;
  48.                         }
  49.                    }
  50.                 }
  51.                 catch(Exception e){
  52.                         e.printStackTrace();
  53.                 }
  54.         }
  55. }