]> matita.cs.unibo.it Git - logicplayer.git/blobdiff - server/tesi/src/com/company/DirectoryWhatcer.java
shuffling + libs imported
[logicplayer.git] / server / tesi / src / com / company / DirectoryWhatcer.java
diff --git a/server/tesi/src/com/company/DirectoryWhatcer.java b/server/tesi/src/com/company/DirectoryWhatcer.java
deleted file mode 100644 (file)
index 8b376a1..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-package com.company;
-
-import java.io.*;
-import java.nio.file.Path;
-import java.nio.file.StandardWatchEventKinds;
-import java.nio.file.WatchEvent;
-import java.nio.file.WatchEvent.Kind;
-import java.nio.file.WatchKey;
-import java.nio.file.WatchService;
-import java.security.NoSuchAlgorithmException;
-import java.sql.SQLException;
-import java.util.ArrayList;
-
-// Simple class to watch directory events.
-class DirectoryWatcher implements Runnable {
-
-    private Path path;
-
-    public DirectoryWatcher(Path path) {
-        this.path = path;
-    }
-
-    //rimuove tutti gli elementi non validi
-    private void pulisciCartella() {
-        File dir = new File(global.locationEsercizi);
-        String[] lista=dir.list();
-        for(String name : lista)
-        {
-            if (!EsNameParser.check(name))
-            {
-                File file = new File(global.locationEsercizi+name);
-                if (file.delete())
-                    System.out.println("eliminato: "+name);
-                else
-                    System.out.println("problema di eliminazione file");
-            }
-            else
-            {
-                xmlOperation es=new xmlOperation();
-                File car=new File(global.listaEsercizi);
-                if (car.exists()) {
-                    dbConnect db=new dbConnect();
-                    try {
-                        ArrayList<String> esercizi=suString.stringToArrayList(db.dbQuery("4"));
-                        boolean add=true;
-                        for(String esercizio : esercizi)
-                        {
-                            if(esercizio.equals(name))
-                                add=false;
-                        }
-                        if(add)
-                            es.add(name);
-                    } catch (SQLException e) {
-                        e.printStackTrace();
-                    } catch (ClassNotFoundException e) {
-                        e.printStackTrace();
-                    } catch (IllegalAccessException e) {
-                        e.printStackTrace();
-                    } catch (InstantiationException e) {
-                        e.printStackTrace();
-                    } catch (IOException e) {
-                        e.printStackTrace();
-                    } catch (NoSuchAlgorithmException e) {
-                        e.printStackTrace();
-                    }
-                }
-            }
-        }
-    }
-
-    // print the events and the affected file
-    private void printEvent(WatchEvent<?> event) throws IOException {
-        Kind<?> kind = event.kind();
-        if (kind.equals(StandardWatchEventKinds.ENTRY_CREATE))
-        {
-            Path pathCreated = (Path) event.context();
-            System.out.println("Entry created:" + pathCreated);
-            boolean check = EsNameParser.check(pathCreated.getFileName().toString());
-            if(!check)
-            {
-                File file = new File(global.locationEsercizi+pathCreated.getFileName().toString());
-                if(file.delete())
-                    System.out.println("eliminato");
-                else
-                    System.out.println("problema di eliminazione file");
-            }
-            else
-            {
-                xmlOperation es=new xmlOperation();
-                File dir=new File(global.listaEsercizi);
-                if (dir.exists())
-                    es.add(pathCreated.getFileName().toString());
-            }
-        }
-        else if (kind.equals(StandardWatchEventKinds.ENTRY_DELETE))
-        {
-            Path pathDeleted = (Path) event.context();
-            System.out.println("Entry deleted:" + pathDeleted);
-            xmlOperation es=new xmlOperation();
-            File dir=new File(global.listaEsercizi);
-            if (dir.exists())
-                es.remove(pathDeleted.getFileName().toString());
-        }
-        else if (kind.equals(StandardWatchEventKinds.ENTRY_MODIFY))
-        {
-            Path pathModified = (Path) event.context();
-            System.out.println("Entry modified:" + pathModified);
-        }
-    }
-
-    @Override
-    public void run() {
-        try {
-            pulisciCartella();
-            WatchService watchService = path.getFileSystem().newWatchService();
-            path.register(watchService, StandardWatchEventKinds.ENTRY_CREATE,
-                    StandardWatchEventKinds.ENTRY_MODIFY, StandardWatchEventKinds.ENTRY_DELETE);
-
-            // loop forever to watch directory
-            while (true) {
-                WatchKey watchKey;
-                watchKey = watchService.take(); // this call is blocking until events are present
-
-                // poll for file system events on the WatchKey
-                for (final WatchEvent<?> event : watchKey.pollEvents()) {
-                    printEvent(event);
-                }
-
-                // if the watched directed gets deleted, get out of run method
-                if (!watchKey.reset()) {
-                    System.out.println("No longer valid");
-                    watchKey.cancel();
-                    watchService.close();
-                    break;
-                }
-            }
-
-        } catch (InterruptedException ex) {
-            System.out.println("interrupted. Goodbye");
-            return;
-        } catch (IOException ex) {
-            ex.printStackTrace();  // don't do this in production code. Use a loggin framework
-            return;
-        }
-    }
-
-}