2008-02-11 Sascha L. Teichmann : * contrib/scheduler.sh: new start script for distribution. * doc/INSTALL.txt: short install description. 2008-02-10 Sascha L. Teichmann : * contrib/run.sh: Added property to wsplgen tmp dir * scheduler/src/main/java/de/intevation/webflys/model/Backend.java: When a job get unlocked the current time is inserted as stop time. * scheduler/src/main/java/de/intevation/webflys/model/Job.java: Removed execution code. Its a POJO again. * scheduler/src/main/java/de/intevation/webflys/model/JobExecutor.java: New. Contains the exceution code now. creates temp dir and downloads wst files if present in job. * scheduler/src/main/java/de/intevation/webflys/scheduler/Scheduler.java: Uses the JobExecutor now. * scheduler/src/main/resources/templates/list-html.vm: Modified to only show stop action in case of waiting jobs and jobs in progress. * scheduler/src/main/java/de/intevation/webflys/util/FileUtil.java: New. Eases deletion of none emty directories. 2008-02-10 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/model/Backend.java: implemented locking and unlocking of jobs in progress. * scheduler/src/main/java/de/intevation/webflys/model/Job.java: Make jobs more robust against killing. * scheduler/src/main/java/de/intevation/webflys/scheduler/Scheduler.java: Before unlock a job look if it is killed. * scheduler/src/main/resources/templates/list-html.vm: Tweaked text a bit. 2008-02-10 Sascha L. Teichmann : * doc/scheduler-schnittstelle.txt: Added "stop" command to halt jobs without removing them from job list. Added a new state 'job in progress'. * doc/schema.sql: Added state check for 'job in progress'. * scheduler/src/main/java/de/intevation/webflys/handlers/AddHandler.java: Sets a new job to 'waiting' now. * scheduler/src/main/java/de/intevation/webflys/model/Backend.java: Added stub methods to lock and unlock a job that is in progress. * scheduler/src/main/java/de/intevation/webflys/model/Job.java: Added state constants, an execute() method and an exception class. * scheduler/src/main/java/de/intevation/webflys/handlers/StopHandler.java: New. Handler to stop jobs. Does nothing by now. * scheduler/src/main/java/de/intevation/webflys/scheduler/Main.java: Added new stop handler. * scheduler/src/main/java/de/intevation/webflys/scheduler/Scheduler.java: Now waits 60secs before looking into database for new jobs repeatly. Jobs are instantiated through backend and released after exceution. * scheduler/src/main/resources/templates/list-html.vm: Modified to show the job states in human readable form. Added links to stop jobs. 2008-02-08 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/webserver/SimpleWebServer.java: URL decoding was done to early. 2008-02-08 Sascha L. Teichmann : * doc/schema.sql: Renamed constraint gel_ch to gel_ck. Now values 0, 1, 2 and 3 are valid. 2008-02-08 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/scheduler/Scheduler.java: New. Stub implementation of the job processing unit. * doc/scheduler-schnittstelle.txt: delete command does not need user id. * scheduler/src/main/java/de/intevation/webflys/handlers/AddHandler.java: Wakeup scheduler if new job has arrived. * scheduler/src/main/java/de/intevation/webflys/handlers/DeleteHandler.java: Remove given jobs from database and notify Scheduler to kill these jobs. * scheduler/src/main/java/de/intevation/webflys/model/Backend.java: Add method to delete jobs from database. * scheduler/src/main/java/de/intevation/webflys/scheduler/Main.java: Setup Scheduler and put it into the global context of the web server. * scheduler/src/main/resources/templates/list-html.vm: Modified to generate the delete links with job_ids instead of job_id. XXX: For security reason it would be much better if a common secret is needed to delete the jobs. 2008-02-07 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/util/StringUtil.java: return null from entityEncode(s) when s is null. * scheduler/src/main/resources/templates/list-html.vm, scheduler/src/main/resources/templates/list-xml.vm: Added '!' to string interpolation if value is not present. 2008-02-07 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/model/Backend.java: Using Timestamp instead of Time objects. 2008-02-07 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/scheduler/Main.java: Setup right handler for HTML listing. * scheduler/src/main/resources/templates/list-html.vm: Fixed issue with string interpolation of enqueue time. 2008-02-07 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/model/Job.java: Added user id. Fixed timestamp issues. * scheduler/src/main/java/de/intevation/webflys/handlers/AddHandler.java: Fixed parameters typos. Added user id evaluation. * scheduler/src/main/java/de/intevation/webflys/model/Backend.java: Fixed timestamp issues. Added user id. * scheduler/src/main/resources/templates/list-xml.vm: Fixed typos in string interpolation. 2008-02-07 Sascha L. Teichmann : * src/main/java/de/intevation/webflys/handlers/AddHandler.java: Creates new jobs in database now. untested. * src/main/java/de/intevation/webflys/util/PreparedStatementUtil.java: Removed. Not really needed. 2008-02-07 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/model/Job.java: Added email to job. Added store(boolean create) to update or create job in database. * scheduler/src/main/java/de/intevation/webflys/model/Backend.java: Added method storeJob(job, create) to update create job in database. Only creation is implemented yet. 2008-02-06 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/model/Job.java: Added inner class Data to model the data part of the job. * scheduler/src/main/java/de/intevation/webflys/model/Backend.java: Fetch data for a given job. 2008-02-06 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/handlers/ListHandler.java: Code cleanup. * scheduler/src/main/java/de/intevation/webflys/util/StringUtil.java: Added vim style line. * scheduler/src/main/java/de/intevation/webflys/util/PreparedStatementUtil.java: New. Helper for set values in prepared Statements. 2008-02-06 Sascha L. Teichmann : * README.txt: New. how to create a jobs database. * doc/schema.sql: Changed schema to contain the river name. Removed columns which are computable out of the river name. * doc/scheduler-schnittstelle.txt: Adjusted description of the add command. * scheduler/src/main/java/de/intevation/webflys/handlers/AddHTMLHandler.java: Adjust to list the fields for the add command. 2008-02-06 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/handlers/ListHTMLHandler.java: New. Lists jobs in HTML form. * scheduler/src/main/resources/templates/list-html.vm: New. Template for HTML job listing. * scheduler/src/main/resources/templates/list-xml.vm: Fixed names of the properties. * scheduler/src/main/java/de/intevation/webflys/handlers/ListHandler.java: If no 'user_id' parameter is given list jobs for all users. * scheduler/src/main/java/de/intevation/webflys/model/Backend.java: Support extracting all users from database. * scheduler/src/main/java/de/intevation/webflys/model/Job.java: Added formatted start and stop time properties. Added quoted output of user message. * scheduler/src/main/java/de/intevation/webflys/model/User.java: Added method to all users. * scheduler/src/main/java/de/intevation/webflys/scheduler/Main.java: Setup new HTML job listing. 2008-02-06 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/scheduler/Main.java: allown hosts are now separated by ',' and not ';' any more. 2008-02-04 Sascha L. Teichmann : * contrib/run.sh: root dir for rivers: $WEB_FLYS_DIR; path to derby db: $DERBY_PATH * scheduler/src/main/java/de/intevation/webflys/scheduler/Main.java: Setup handler for rivers. * scheduler/src/main/java/de/intevation/webflys/handlers/RiversHandler.java: New. Handler to serve list of rivers. * scheduler/src/main/java/de/intevation/webflys/model/DEM.java: New. POJO for DEM. * scheduler/src/main/java/de/intevation/webflys/model/River.java: New. POJO for river. * scheduler/src/main/resources/templates/rivers-xml.vm: New. template for XML listing of rivers. 2008-02-04 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/handlers/ListHandler.java: Use database instead of dummy data. * scheduler/src/main/java/de/intevation/webflys/model/Backend.java: Uses User.getId() instead of User.getName(). * scheduler/src/main/java/de/intevation/webflys/model/User.java: Renamed get/setName() to get/setId() to fill template correctly. * contrib/run.sh: Added. start script with path to a derby database. 2008-01-31 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/model/: New package. * scheduler/src/main/java/de/intevation/webflys/model/Backend.java: New. Encapsulates SQL. * scheduler/src/main/java/de/intevation/webflys/scheduler/DBConnection.java, scheduler/src/main/java/de/intevation/webflys/model/DBConnection.java: Moved from scheduler to model package. * scheduler/src/main/java/de/intevation/webflys/model/Job.java: POJO for jobs in queue. * scheduler/src/main/java/de/intevation/webflys/model/User.java: POJO for user in queue. 2008-01-31 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/webserver/, scheduler/src/main/java/de/intevation/webflys/util/, scheduler/src/main/java/de/intevation/webflys/handlers/: New packages * scheduler/src/main/java/de/intevation/webflys/scheduler/Main.java: Modified to use new package structure. * scheduler/src/main/java/de/intevation/webflys/scheduler/AddHTMLHandler.java, scheduler/src/main/java/de/intevation/webflys/scheduler/AddHandler.java, scheduler/src/main/java/de/intevation/webflys/scheduler/DemoHandler.java, scheduler/src/main/java/de/intevation/webflys/scheduler/DeleteHandler.java, scheduler/src/main/java/de/intevation/webflys/scheduler/KillHandler.java, scheduler/src/main/java/de/intevation/webflys/scheduler/ListHandler.java, scheduler/src/main/java/de/intevation/webflys/scheduler/ShutdownHandler.java: Moved to new handlers package. * scheduler/src/main/java/de/intevation/webflys/scheduler/SimpleWebServer.java, scheduler/src/main/java/de/intevation/webflys/scheduler/GlobalContext.java, scheduler/src/main/java/de/intevation/webflys/scheduler/ByteArray.java, scheduler/src/main/java/de/intevation/webflys/scheduler/XMLHandler.java, scheduler/src/main/java/de/intevation/webflys/scheduler/HTMLHandler.java: Moved to new webserver package. * scheduler/src/main/java/de/intevation/webflys/scheduler/Utils.java: Removed * scheduler/src/main/java/de/intevation/webflys/util/StringUtil.java: New. was Utils. 2008-01-30 Sascha L. Teichmann : * doc/scheduler-schnittstelle.txt: A few add-flags are optional. * scheduler/src/main/java/de/intevation/webflys/scheduler/Main.java: Added handler for add-html. * scheduler/src/main/java/de/intevation/webflys/scheduler/AddHTMLHandler.java: New. Handler filling names of flags into HTML form to trigger add. * scheduler/src/main/resources/templates/add-html.vm: Template for add form. 2008-01-28 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/scheduler/DBConnection.java: Add 'static' to getDataSource(). * scheduler/src/main/resources/templates/list-xml.vm: New. Template for list result. * scheduler/src/main/java/de/intevation/webflys/scheduler/ListHandler.java: Fill template with dummy data. 2008-01-28 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/scheduler/DBConnection.java: New. Get DataSource from connection pool. * scheduler/pom.xml: Added support for Apache Commons DBCP and Apache Derby. The embedded version is used by default. 2008-01-28 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/scheduler/Main.java: Removed code to load properties file. * scheduler/src/main/java/de/intevation/webflys/scheduler/Config.java: Wrapper around properties access. 2008-01-28 Sascha L. Teichmann : * doc/scheduler-schnittstelle.txt: New. Description of the interface. * doc/schema.sql: Schema for DB. 2008-01-27 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/scheduler/Main.java: Configured support for 'kill', 'list' and 'shutdown'. * scheduler/src/main/java/de/intevation/webflys/scheduler/KillHandler.java, scheduler/src/main/java/de/intevation/webflys/scheduler/ListHandler.java, scheduler/src/main/java/de/intevation/webflys/scheduler/ShutdownHandler.java: New. Stub implementations for 'kill', 'list' and 'shutdown'. 2008-01-27 Sascha L. Teichmann : * scheduler/src/main/java/de/intevation/webflys/scheduler/Main.java: Added support for 'add' and 'delete'. * scheduler/src/main/java/de/intevation/webflys/scheduler/XMLHandler.java: New. Common base class for XML handlers. * scheduler/src/main/java/de/intevation/webflys/scheduler/AddHandler.java, scheduler/src/main/java/de/intevation/webflys/scheduler/DeleteHandler.java: New. Stub implementations for 'add' and 'delete' commands. * scheduler/src/main/resources/templates/status.vm: New. Template for status reply. * scheduler/src/main/java/de/intevation/webflys/scheduler/Utils.java: New. For common helpers. * scheduler/src/main/java/de/intevation/webflys/scheduler/DemoHandler.java: Uses Utils.quote() now. * contrib/run-dev.sh: Removed echo. 2008-01-27 Sascha L. Teichmann : * scheduler/pom.xml: Added Velocity to dependencies. * contrib/run-dev.sh: New. For running the server. * scheduler/src/main/java/de/intevation/webflys/scheduler/DemoHandler.java: Uses Velocity template now. * scheduler/src/main/resources/templates/demo.vm: New. Template for demo handler. * scheduler/src/main/java/de/intevation/webflys/scheduler/Main.java: Configured Velocity. * scheduler/src/main/java/de/intevation/webflys/scheduler/SimpleWebServer.java: Added new field global context for inter handler communication. * scheduler/src/main/java/de/intevation/webflys/scheduler/GlobalContext.java: This class may be used as a 'blackboard' for inter handler communication. 2008-01-27 Sascha L. Teichmann : * .hgignore: Make more compatible * scheduler/**: Initial import of the web server. 2008-01-27 Sascha L. Teichmann : * .hgignore, ChangeLog.txt: Added.