summaryrefslogtreecommitdiff
path: root/src/main/java/io/trygvis/Main.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/io/trygvis/Main.java')
-rwxr-xr-xsrc/main/java/io/trygvis/Main.java93
1 files changed, 93 insertions, 0 deletions
diff --git a/src/main/java/io/trygvis/Main.java b/src/main/java/io/trygvis/Main.java
new file mode 100755
index 0000000..c25b0d9
--- /dev/null
+++ b/src/main/java/io/trygvis/Main.java
@@ -0,0 +1,93 @@
+package io.trygvis;
+
+import io.trygvis.model.*;
+import org.hibernate.dialect.*;
+import org.quartz.*;
+import org.quartz.impl.*;
+import org.quartz.impl.triggers.*;
+import org.slf4j.*;
+import org.slf4j.bridge.*;
+import org.springframework.beans.factory.annotation.*;
+import org.springframework.context.support.*;
+import org.springframework.stereotype.*;
+import org.springframework.transaction.annotation.*;
+
+import javax.persistence.*;
+import java.text.*;
+import java.util.*;
+
+import static java.lang.System.*;
+
+@Component
+@Transactional
+public class Main {
+ private static final Logger log = LoggerFactory.getLogger(Main.class);
+
+ public static void main(String[] args)
+ throws Exception {
+ SLF4JBridgeHandler.install();
+
+ String username = getProperty("user.name");
+ setProperty("database.url", "jdbc:postgresql://localhost/" + username);
+ setProperty("database.username", username);
+ setProperty("database.password", username);
+ setProperty("hibernate.showSql", "true");
+ setProperty("hibernate.hbm2ddl.auto", "validate"); // create
+ setProperty("hibernate.dialect", PostgreSQL82Dialect.class.getName());
+
+ log.info("Starting context");
+ ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
+ context.start();
+ log.info("Started context");
+
+ context.getBean(Main.class).run();
+
+ Thread.sleep(1000 * 1000);
+
+// log.info("Sleeping");
+// Thread.sleep(10 * 1000);
+
+ log.info("Stopping context");
+ context.stop();
+ log.info("Stopped context");
+
+ exit(0);
+ }
+
+ @PersistenceContext
+ private EntityManager entityManager;
+
+ @Autowired
+ private Scheduler scheduler;
+
+ public void run() throws Exception {
+ log.info("Main.run");
+
+ JobKey jobKey = JobKey.jobKey("create-article");
+
+ boolean b = scheduler.checkExists(jobKey);
+ log.info("checkExists: {}", b);
+
+ if(!b) {
+ JobDetailImpl jobDetail = new JobDetailImpl();
+ jobDetail.setKey(jobKey);
+ jobDetail.setDurability(true);
+ jobDetail.setJobClass(MyJob.class);
+ scheduler.addJob(jobDetail, true);
+ }
+
+ TriggerKey triggerKey = TriggerKey.triggerKey("my-trigger");
+ boolean b1 = scheduler.checkExists(triggerKey);
+ log.info("checkExists: {}", b1);
+ if(!b1) {
+ CronTriggerImpl trigger = new CronTriggerImpl();
+ trigger.setName("my-trigger");
+ trigger.setJobKey(jobKey);
+ trigger.setCronExpression("0/10 * * * * ?");
+ scheduler.scheduleJob(trigger);
+ }
+
+// Article article = new Article(new Date(), null, "title", "body");
+// entityManager.persist(article);
+ }
+}