import java.io.File;
import java.util.Iterator;
import java.util.Vector;

import sos.spooler.Job_impl;
import sos.util.SOSFile;


public class JobSampleAPINotification extends Job_impl {


    public boolean spooler_process() {
  
        try {
            String directories = spooler_task.changed_directories();
            String[] directoryPaths = directories.split(";");

            for(int i=0; i<directoryPaths.length; i++) {
                if (directoryPaths[i].length() == 0continue;

                File directory = new File(directoryPaths[i]);
                // fetch a list of files in the given directory that match the regular expression
                Vector files = SOSFile.getFilelist(directory.getCanonicalPath()".*"0);
                Iterator filesIterator = files.iterator();

                while (filesIterator.hasNext()) {
                    File inputFile = (FilefilesIterator.next();
                    File outputFile = new File(spooler_task.params().var("output_directory""/" + inputFile.getName());
                    if (outputFile.exists()) { 
                        if (!outputFile.delete()) {
                            spooler_log.warn("output file probably in use, trying later: " + outputFile.getCanonicalPath())
                            continue;
                        }
                    }
                    if (!inputFile.renameTo(outputFile)) {
                        spooler_log.warn("could not rename input file [" + inputFile.getCanonicalPath() "] " 
                           "to output file [" + outputFile.getCanonicalPath() "]")
                    else {
                        spooler_log.info("input file [" + inputFile.getCanonicalPath() "] " 
                           "successfully moved to output file [" + outputFile.getCanonicalPath() "]")
                    }
                }
            }

            return false;
        catch (Exception e) {
            spooler_log.warn("error occurred triggering input files: " + e.getMessage());
            return false;
        }
    }
}