1 55 package org.lateralnz.panther.util; 56 57 import java.io.File ; 58 import java.io.FileReader ; 59 import java.io.FilenameFilter ; 60 import java.io.IOException ; 61 import java.util.ArrayList ; 62 63 import org.lateralnz.common.telnet.Server; 64 import org.lateralnz.common.util.Constants; 65 import org.lateralnz.common.util.StringUtils; 66 67 public class ConsoleConnector extends Server implements Constants { 68 private String dir; 69 public long time; 70 71 protected ArrayList functions = new ArrayList (); 72 73 public ConsoleConnector(int port, String dir, String allowFromRegex) throws IOException { 74 super(port, ConsoleInterface.class, allowFromRegex); 75 76 this.dir = dir; 77 78 init(); 79 } 80 81 public void init() throws IOException { 82 if (!StringUtils.isEmpty(dir)) { 83 functions.clear(); 84 File f = new File (dir); 85 if (!f.isDirectory()) { 86 throw new IOException ("invalid function dir " + dir); 87 } 88 else { 89 File [] files = f.listFiles(new FilenameFilter () { 90 public boolean accept(File dir, String name) { 91 return name.endsWith(".py"); 92 } 93 }); 94 for (int i = 0; i < files.length; i++) { 95 functions.add(StringUtils.readFrom(new FileReader (files[i]))); 96 } 97 } 98 } 99 } 100 101 public void shutdown() { 102 try { interrupt(); } catch (Exception e) { } 103 } 104 105 } | Popular Tags |