From: <ac...@us...> - 2008-11-16 04:26:13
|
Revision: 60 http://drawbridge.svn.sourceforge.net/drawbridge/?rev=60&view=rev Author: acresse Date: 2008-11-16 04:26:03 +0000 (Sun, 16 Nov 2008) Log Message: ----------- hopefully resolve missed checkins Modified Paths: -------------- trunk/drawbridge/src/java/net/sf/drawbridge/controller/job/AddOrEditJobController.java trunk/drawbridge/src/java/net/sf/drawbridge/controller/job/AddOrEditJobSubmitController.java trunk/drawbridge/src/java/net/sf/drawbridge/dao/hibernate/hbm/Job.hbm.xml trunk/drawbridge/src/java/net/sf/drawbridge/domain/DefaultDrawbridgeService.java trunk/drawbridge/src/java/net/sf/drawbridge/exec/DefaultJobExecuter.java trunk/drawbridge/src/java/net/sf/drawbridge/exec/JobExecuter.java trunk/drawbridge/src/java/net/sf/drawbridge/sched/ExecuteQueryJob.java trunk/drawbridge/src/sql/create_drawbridge_schema.sql trunk/drawbridge/src/sql/example_data.sql trunk/drawbridge/src/test/net/sf/drawbridge/controller/job/AddOrEditJobControllerTest.java trunk/drawbridge/src/test/net/sf/drawbridge/dao/JobDaoTest.java trunk/drawbridge/src/test/net/sf/drawbridge/exec/DefaultJobExecuterTest.java trunk/drawbridge/src/test/net/sf/drawbridge/sched/ExecuteQueryJobTest.java Modified: trunk/drawbridge/src/java/net/sf/drawbridge/controller/job/AddOrEditJobController.java =================================================================== --- trunk/drawbridge/src/java/net/sf/drawbridge/controller/job/AddOrEditJobController.java 2008-11-16 03:51:07 UTC (rev 59) +++ trunk/drawbridge/src/java/net/sf/drawbridge/controller/job/AddOrEditJobController.java 2008-11-16 04:26:03 UTC (rev 60) @@ -21,6 +21,7 @@ import javax.servlet.http.HttpServletResponse; import net.sf.drawbridge.vo.Job; +import net.sf.drawbridge.vo.JobType; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @@ -44,6 +45,7 @@ } mav.addObject("runAsList", drawbridgeService.listRunAsAccounts(databaseId)); mav.addObject("handlerList", drawbridgeService.listResultHandlers()); + mav.addObject("jobTypeList", JobType.values()); return mav; } Modified: trunk/drawbridge/src/java/net/sf/drawbridge/controller/job/AddOrEditJobSubmitController.java =================================================================== --- trunk/drawbridge/src/java/net/sf/drawbridge/controller/job/AddOrEditJobSubmitController.java 2008-11-16 03:51:07 UTC (rev 59) +++ trunk/drawbridge/src/java/net/sf/drawbridge/controller/job/AddOrEditJobSubmitController.java 2008-11-16 04:26:03 UTC (rev 60) @@ -76,7 +76,7 @@ job=new Job(null, name, account, - JobType.QUERY, //TODO: read JobType from JSP + JobType.getJobType(request.getParameter("jobType")), request.getParameter("query"), user, Calendar.getInstance(), null, null, @@ -103,7 +103,7 @@ job=new Job(new Long(jobIdStr), name, account, - JobType.QUERY, // TODO: Read JobType from JSP + JobType.getJobType(request.getParameter("jobType")), request.getParameter("query"), user, Calendar.getInstance(), null, null, Modified: trunk/drawbridge/src/java/net/sf/drawbridge/dao/hibernate/hbm/Job.hbm.xml =================================================================== --- trunk/drawbridge/src/java/net/sf/drawbridge/dao/hibernate/hbm/Job.hbm.xml 2008-11-16 03:51:07 UTC (rev 59) +++ trunk/drawbridge/src/java/net/sf/drawbridge/dao/hibernate/hbm/Job.hbm.xml 2008-11-16 04:26:03 UTC (rev 60) @@ -16,7 +16,7 @@ lazy="false" /> - <property name="jobType" type="net.sf.drawbridge.dao.hibernate.JobTypeUserType" column="JOB_TYPE"/> + <property name="jobType" type="net.sf.drawbridge.dao.hibernate.JobTypeUserType" column="JOB_TYPE" not-null="true"/> <property name="query" type="string" length="1024" not-null="true"> <column name="QUERY"/> Modified: trunk/drawbridge/src/java/net/sf/drawbridge/domain/DefaultDrawbridgeService.java =================================================================== --- trunk/drawbridge/src/java/net/sf/drawbridge/domain/DefaultDrawbridgeService.java 2008-11-16 03:51:07 UTC (rev 59) +++ trunk/drawbridge/src/java/net/sf/drawbridge/domain/DefaultDrawbridgeService.java 2008-11-16 04:26:03 UTC (rev 60) @@ -39,6 +39,7 @@ import net.sf.drawbridge.vo.ExecutionContext; import net.sf.drawbridge.vo.Group; import net.sf.drawbridge.vo.Job; +import net.sf.drawbridge.vo.JobType; import net.sf.drawbridge.vo.QueryParam; import net.sf.drawbridge.vo.RunAsAccount; import net.sf.drawbridge.vo.User; @@ -195,8 +196,8 @@ RunAsAccount runAsAccount = job.getRunAsAccount(); Database database = runAsAccount.getDatabase(); Driver driver = database.getDriver(); - return executer.executeJob(driver, database, runAsAccount, - parser.getPreparedStatementQuery(job.getQuery()), params); + JobType jobType = job.getJobType(); + return executer.executeQueryJob(driver, database, runAsAccount, parser.getPreparedStatementQuery(job.getQuery()), params); } catch (Exception ex) { ex.printStackTrace(); return null; Modified: trunk/drawbridge/src/java/net/sf/drawbridge/exec/DefaultJobExecuter.java =================================================================== --- trunk/drawbridge/src/java/net/sf/drawbridge/exec/DefaultJobExecuter.java 2008-11-16 03:51:07 UTC (rev 59) +++ trunk/drawbridge/src/java/net/sf/drawbridge/exec/DefaultJobExecuter.java 2008-11-16 04:26:03 UTC (rev 60) @@ -38,7 +38,7 @@ private static final String TIMESTAMP_FORMAT_STR=DATE_FORMAT_STR+" HH:mm:ss"; @SuppressWarnings("unchecked") - public List<Map<String, Object>> executeJob(Driver driver, Database database, RunAsAccount runAsAccount, String query, List<QueryParam> params) throws Exception{ + public List<Map<String, Object>> executeQueryJob(Driver driver, Database database, RunAsAccount runAsAccount, String query, List<QueryParam> params) throws Exception{ SingleConnectionDataSource dataSource=new SingleConnectionDataSource(); dataSource.setDriverClassName(driver.getClassName()); dataSource.setUrl(database.getJdbcUrl()); @@ -82,4 +82,14 @@ return converted; } + public List<Map<String, Object>> executeProcedureJob(Driver driver, Database database, RunAsAccount runAsAccount, String query, List<QueryParam> params) throws Exception { + // TODO Auto-generated method stub + return null; + } + + public int executeUpdateJob(Driver driver, Database database, RunAsAccount runAsAccount, String query, List<QueryParam> params) throws Exception { + // TODO Auto-generated method stub + return 0; + } + } Modified: trunk/drawbridge/src/java/net/sf/drawbridge/exec/JobExecuter.java =================================================================== --- trunk/drawbridge/src/java/net/sf/drawbridge/exec/JobExecuter.java 2008-11-16 03:51:07 UTC (rev 59) +++ trunk/drawbridge/src/java/net/sf/drawbridge/exec/JobExecuter.java 2008-11-16 04:26:03 UTC (rev 60) @@ -28,6 +28,10 @@ public interface JobExecuter { public static final String BEAN_NAME="JobExecuter"; - public List<Map<String, Object>> executeJob(Driver driver, Database database, RunAsAccount runAsAccount, String query, List<QueryParam> params) throws Exception; + public List<Map<String, Object>> executeQueryJob(Driver driver, Database database, RunAsAccount runAsAccount, String query, List<QueryParam> params) throws Exception; + public int executeUpdateJob(Driver driver, Database database, RunAsAccount runAsAccount, String query, List<QueryParam> params) throws Exception; + + public List<Map<String, Object>> executeProcedureJob(Driver driver, Database database, RunAsAccount runAsAccount, String query, List<QueryParam> params) throws Exception; + } Modified: trunk/drawbridge/src/java/net/sf/drawbridge/sched/ExecuteQueryJob.java =================================================================== --- trunk/drawbridge/src/java/net/sf/drawbridge/sched/ExecuteQueryJob.java 2008-11-16 03:51:07 UTC (rev 59) +++ trunk/drawbridge/src/java/net/sf/drawbridge/sched/ExecuteQueryJob.java 2008-11-16 04:26:03 UTC (rev 60) @@ -96,7 +96,7 @@ String handlerParams = job.getHandlerParams(); List<QueryParam> params = Collections.emptyList(); try { - List<Map<String, Object>> results = executer.executeJob(driver, db, runAs, query, params); + List<Map<String, Object>> results = executer.executeQueryJob(driver, db, runAs, query, params); handler.handleQuery(results, propConverter.convertToProperties(handlerParams)); ctx.setResult(Boolean.TRUE); } catch (Exception e) { Modified: trunk/drawbridge/src/sql/create_drawbridge_schema.sql =================================================================== --- trunk/drawbridge/src/sql/create_drawbridge_schema.sql 2008-11-16 03:51:07 UTC (rev 59) +++ trunk/drawbridge/src/sql/create_drawbridge_schema.sql 2008-11-16 04:26:03 UTC (rev 60) @@ -86,7 +86,8 @@ CONSTRAINT FK_DB_JOB_REVIEWED_BY FOREIGN KEY FK_DB_JOB_REVIEWED_BY (REVIEWED_BY) REFERENCES DB_USER (ID), CONSTRAINT FK_DB_JOB_APPROVED_BY FOREIGN KEY FK_DB_JOB_APPROVED_BY (APPROVED_BY) REFERENCES DB_USER (ID), CONSTRAINT UNQ_DB_JOB UNIQUE (NAME), - CONSTRAINT CHK_DB_JOB_ACTIVE CHECK ACTIVE IN ('Y','N') + CONSTRAINT CHK_DB_JOB_ACTIVE CHECK ACTIVE IN ('Y','N'), + CONSTRAINT CHK_DB_JOB_JOB_TYPE CHECK ACTIVE IN ('Q','U','P') ) TYPE=InnoDB; CREATE TABLE DB_SCHEDULE( Modified: trunk/drawbridge/src/sql/example_data.sql =================================================================== --- trunk/drawbridge/src/sql/example_data.sql 2008-11-16 03:51:07 UTC (rev 59) +++ trunk/drawbridge/src/sql/example_data.sql 2008-11-16 04:26:03 UTC (rev 60) @@ -14,6 +14,6 @@ INSERT INTO DB_USER_GROUP (USER_ID,GROUP_ID) VALUES (-1,-1); -INSERT INTO DB_JOB (ID,NAME,RUN_AS_ID,QUERY,SUBMITTED_BY,SUBMITTED_ON,REVIEWED_BY,REVIEWED_ON,APPROVED_BY,APPROVED_ON,ACTIVE,HANDLER,HANDLER_PARAMS) VALUES (-1,'all jobs',-2,'SELECT * FROM DB_JOB',-1,{d '2008-03-19'},null,null,null,null,'Y','NoOpResultHandler',null); +INSERT INTO DB_JOB (ID,NAME,RUN_AS_ID,JOB_TYPE,QUERY,SUBMITTED_BY,SUBMITTED_ON,REVIEWED_BY,REVIEWED_ON,APPROVED_BY,APPROVED_ON,ACTIVE,HANDLER,HANDLER_PARAMS) VALUES (-1,'all jobs',-2,'Q','SELECT * FROM DB_JOB',-1,{d '2008-03-19'},null,null,null,null,'Y','NoOpResultHandler',null); COMMIT; \ No newline at end of file Modified: trunk/drawbridge/src/test/net/sf/drawbridge/controller/job/AddOrEditJobControllerTest.java =================================================================== --- trunk/drawbridge/src/test/net/sf/drawbridge/controller/job/AddOrEditJobControllerTest.java 2008-11-16 03:51:07 UTC (rev 59) +++ trunk/drawbridge/src/test/net/sf/drawbridge/controller/job/AddOrEditJobControllerTest.java 2008-11-16 04:26:03 UTC (rev 60) @@ -71,7 +71,12 @@ model.put("job", job); model.put("runAsList", runAsList); model.put("handlerList", handlerList); + model.put("jobTypeList", JobType.values()); + assertEquals(model.keySet(),mav.getModel().keySet()); + JobType[] jobTypeList = (JobType[])(mav.getModel().remove("jobTypeList")); + model.remove("jobTypeList"); + assertJobTypeList(jobTypeList); assertEquals(model,mav.getModel()); } @@ -94,8 +99,20 @@ Map<String,Object> model=new HashMap<String,Object>(); model.put("runAsList", runAsList); model.put("handlerList", handlerList); + model.put("jobTypeList", JobType.values()); + assertEquals(model.keySet(),mav.getModel().keySet()); + JobType[] jobTypeList = (JobType[])(mav.getModel().remove("jobTypeList")); + model.remove("jobTypeList"); + assertJobTypeList(jobTypeList); assertEquals(model,mav.getModel()); } + + private void assertJobTypeList(JobType[] jobTypeList){ + assertEquals(3, jobTypeList.length); + assertEquals(JobType.QUERY, jobTypeList[0]); + assertEquals(JobType.UPDATE, jobTypeList[1]); + assertEquals(JobType.PROCEDURE, jobTypeList[2]); + } } Modified: trunk/drawbridge/src/test/net/sf/drawbridge/dao/JobDaoTest.java =================================================================== --- trunk/drawbridge/src/test/net/sf/drawbridge/dao/JobDaoTest.java 2008-11-16 03:51:07 UTC (rev 59) +++ trunk/drawbridge/src/test/net/sf/drawbridge/dao/JobDaoTest.java 2008-11-16 04:26:03 UTC (rev 60) @@ -87,7 +87,7 @@ try { User submitter = userDao.get(0); RunAsAccount account = runAsAccountDao.get(0); - Job job = new Job(null, "A new job", account, JobType.QUERY, "select count(*) from dual", submitter, Calendar.getInstance(), null, null, null, null, true, "handler", params); + Job job = new Job(null, "A new job", account, JobType.QUERY, "select count(*) from dual", submitter, Calendar.getInstance(), null, null, null, null, true, "handler", params); target.create(job); assertNotNull("id is still null", job.getId()); } finally { Modified: trunk/drawbridge/src/test/net/sf/drawbridge/exec/DefaultJobExecuterTest.java =================================================================== --- trunk/drawbridge/src/test/net/sf/drawbridge/exec/DefaultJobExecuterTest.java 2008-11-16 03:51:07 UTC (rev 59) +++ trunk/drawbridge/src/test/net/sf/drawbridge/exec/DefaultJobExecuterTest.java 2008-11-16 04:26:03 UTC (rev 60) @@ -23,7 +23,6 @@ import java.util.Map; import junit.framework.TestCase; -import net.sf.drawbridge.exec.DefaultJobExecuter; import net.sf.drawbridge.vo.Database; import net.sf.drawbridge.vo.Driver; import net.sf.drawbridge.vo.QueryParam; @@ -54,10 +53,10 @@ params.add(new QueryParam(Types.TIMESTAMP,"acessTs","01/01/1970 00:00:00")); params.add(new QueryParam(Types.VARCHAR,"modBy","adam")); - List<Map<String, Object>> results=target.executeJob( + List<Map<String, Object>> results=target.executeQueryJob( new Driver(null,null,"org.hsqldb.jdbcDriver"), new Database(null,null,"jdbc:hsqldb:.",null), - new RunAsAccount(null,"sa","",null), + new RunAsAccount(null,"sa","",null), query, params); Modified: trunk/drawbridge/src/test/net/sf/drawbridge/sched/ExecuteQueryJobTest.java =================================================================== --- trunk/drawbridge/src/test/net/sf/drawbridge/sched/ExecuteQueryJobTest.java 2008-11-16 03:51:07 UTC (rev 59) +++ trunk/drawbridge/src/test/net/sf/drawbridge/sched/ExecuteQueryJobTest.java 2008-11-16 04:26:03 UTC (rev 60) @@ -80,7 +80,7 @@ public void testShouldExecuteJobAndSendResultsToHandler() throws Exception { Job job = getJob(); - mockJobExecuter.expects(once()).method("executeJob"); + mockJobExecuter.expects(once()).method("executeQueryJob"); mockBeanFactory.expects(once()).method("getBean").with(eq("SomeHandler")).will(returnValue(mockHandler.proxy())); mockPropConverter.expects(once()).method("convertToProperties").will(returnValue(new Properties())); mockHandler.expects(once()).method("handleQuery"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |