static JobDef findJobDef(String applicationName, DbConn cnx) { List<JobDef> jj = JobDef.select(cnx, "jd_select_by_key", applicationName); if (jj.size() == 0) { return null; } return jj.get(0); }
@Test public void testImportThenReimportJobDefWithPrms() { // Init the default queue (don't start the engine!) Helpers.updateConfiguration(cnx); // First import XmlJobDefParser.parse("target/payloads/jqm-test-xml/xmltest.xml", cnx); cnx.commit(); List<JobDef> jd = JobDef.select(cnx, "jd_select_all"); Assert.assertEquals(2, jd.size()); JobDef fibo = JobDef.select_key(cnx, "Fibo"); Assert.assertEquals("Fibo", fibo.getApplicationName()); Assert.assertEquals("1", fibo.getParametersMap(cnx).get("p1")); // Second import - parameters are different, note 3 instead of 1 XmlJobDefParser.parse("target/payloads/jqm-test-xml/xmltest_np.xml", cnx); cnx.commit(); jd = JobDef.select(cnx, "jd_select_all"); fibo = JobDef.select_key(cnx, "Fibo"); Assert.assertEquals(2, jd.size()); Assert.assertNotNull(fibo); Assert.assertEquals("Fibo", fibo.getApplicationName()); Assert.assertEquals("3", fibo.getParametersMap(cnx).get("p1")); }
List<JobDef> jdd = JobDef.select(cnx, "jd_select_by_id", sj.getJobDefinition()); if (jdd.size() == 0)
static JobDef findJobDef(String applicationName, DbConn cnx) { List<JobDef> jj = JobDef.select(cnx, "jd_select_by_key", applicationName); if (jj.size() == 0) { return null; } return jj.get(0); }
@Test public void testUpdateJobDef() { // Init the default queue (don't start the engine!) Helpers.updateConfiguration(cnx); XmlJobDefParser.parse("target/payloads/jqm-test-xml/xmltest.xml", cnx); cnx.commit(); // Sanity check List<JobDef> jd = JobDef.select(cnx, "jd_select_all"); JobDef fibo = JobDef.select_key(cnx, "Fibo"); Assert.assertEquals(2, jd.size()); Assert.assertEquals("Fibo", fibo.getApplicationName()); Assert.assertEquals("vdjvkdv", fibo.getKeyword1()); Assert.assertEquals("sgfbgg", fibo.getKeyword2()); Assert.assertEquals("jvhkdfl", fibo.getKeyword3()); // Import and therefore update the job definitions. XmlJobDefParser.parse("target/payloads/jqm-test-xml/xmltest_update.xml", cnx); cnx.commit(); jd = JobDef.select(cnx, "jd_select_all"); fibo = JobDef.select_key(cnx, "Fibo"); Assert.assertEquals(2, jd.size()); Assert.assertEquals("Fibo", fibo.getApplicationName()); Assert.assertEquals("NEWVALUE", fibo.getKeyword1()); Assert.assertEquals("", fibo.getKeyword2() == null ? "" : fibo.getKeyword2()); Assert.assertEquals(null, fibo.getKeyword3()); }
/** * Exports all available queues to an XML file. */ static void export(String path, DbConn cnx) throws JqmXmlException { if (cnx == null) { throw new IllegalArgumentException("database connection cannot be null"); } export(path, JobDef.select(cnx, "jd_select_all"), cnx); }
@Test public void testXmlParser() { // Init the default queue (don't start the engine!) Helpers.updateConfiguration(cnx); XmlJobDefParser.parse("target/payloads/jqm-test-xml/xmltest.xml", cnx); cnx.commit(); List<JobDef> jd = JobDef.select(cnx, "jd_select_all"); JobDef fibo = JobDef.select_key(cnx, "Fibo"); Assert.assertEquals(2, jd.size()); Assert.assertEquals("Fibo", fibo.getApplicationName()); Assert.assertEquals(true, fibo.isCanBeRestarted()); Assert.assertEquals("com.enioka.jqm.tests.App", fibo.getJavaClassName()); Assert.assertEquals(TestHelpers.qVip, fibo.getQueue()); Assert.assertEquals("ApplicationTest", fibo.getApplication()); Assert.assertEquals("TestModuleRATONLAVEUR", fibo.getModule()); Assert.assertEquals(false, fibo.isHighlander()); Assert.assertEquals("1", fibo.getParametersMap(cnx).get("p1")); Assert.assertEquals("2", fibo.getParametersMap(cnx).get("p2")); Assert.assertEquals("com.enioka.jqm.tests.App", fibo.getJavaClassName()); Assert.assertEquals("com.enioka.jqm.tests.App", fibo.getJavaClassName()); }
/** * Exports all available queues to an XML file. */ static void export(String path, DbConn cnx) throws JqmXmlException { if (cnx == null) { throw new IllegalArgumentException("database connection cannot be null"); } export(path, JobDef.select(cnx, "jd_select_all"), cnx); }
public static JobDef select_key(DbConn cnx, String name) { List<JobDef> res = select(cnx, "jd_select_by_key", name); if (res.isEmpty()) { throw new NoResultException("no result for query by key for key " + name); } if (res.size() > 1) { throw new DatabaseException("Inconsistent database! Multiple results for query by key for key " + name); } return res.get(0); }
public static JobDef select_key(DbConn cnx, String name) { List<JobDef> res = select(cnx, "jd_select_by_key", name); if (res.isEmpty()) { throw new NoResultException("no result for query by key for key " + name); } if (res.size() > 1) { throw new DatabaseException("Inconsistent database! Multiple results for query by key for key " + name); } return res.get(0); }
private static Element getQueueElement(Queue q, DbConn cnx) { Element queue = new Element("queue"); Element name = new Element("name"); name.setText(q.getName()); Element description = new Element("description"); description.setText(q.getDescription()); Element timeToLive = new Element("timeToLive"); timeToLive.setText(q.getTimeToLive() + ""); queue.addContent(name); queue.addContent(description); queue.addContent(timeToLive); Element jobs = new Element("jobs"); queue.addContent(jobs); List<JobDef> jds = JobDef.select(cnx, "jd_select_by_queue", q.getId()); for (JobDef j : jds) { Element job = new Element("applicationName"); job.setText(j.getApplicationName()); jobs.addContent(job); } return queue; }
private static Element getQueueElement(Queue q, DbConn cnx) { Element queue = new Element("queue"); Element name = new Element("name"); name.setText(q.getName()); Element description = new Element("description"); description.setText(q.getDescription()); Element timeToLive = new Element("timeToLive"); timeToLive.setText(q.getTimeToLive() + ""); queue.addContent(name); queue.addContent(description); queue.addContent(timeToLive); Element jobs = new Element("jobs"); queue.addContent(jobs); List<JobDef> jds = JobDef.select(cnx, "jd_select_by_queue", q.getId()); for (JobDef j : jds) { Element job = new Element("applicationName"); job.setText(j.getApplicationName()); jobs.addContent(job); } return queue; }
@Test public void testImportJobdefWithQueue() { // Init the default queue (don't start the engine!) Helpers.updateConfiguration(cnx); XmlJobDefParser.parse("target/payloads/jqm-test-xml/xmltestnewqueue.xml", cnx); cnx.commit(); List<JobDef> jd = JobDef.select(cnx, "jd_select_all"); Assert.assertEquals(2, jd.size()); // Was the queue created (and only once)? Queue q = Queue.select_key(cnx, "NewQueue"); Assert.assertEquals("Created from a jobdef import. Description should be set later", q.getDescription()); cnx.close(); }
dbr = JobDef.select(cnx, queryName, (Object[]) args);