1 package com.atlassian.scheduler.quartz1;
2
3 import com.google.common.collect.ImmutableMap;
4 import org.quartz.simpl.RAMJobStore;
5 import org.quartz.simpl.SimpleThreadPool;
6
7 import java.util.Map;
8 import java.util.Properties;
9
10
11
12
13
14
15
16 public class Quartz1DefaultSettingsFactory {
17 private static final Map<String, String> DEFAULT_LOCAL_CONFIG = ImmutableMap.<String, String>builder()
18 .put("org.quartz.scheduler.skipUpdateCheck", "true")
19 .put("org.quartz.scheduler.instanceName", "atlassian-scheduler-quartz1.local")
20 .put("org.quartz.threadPool.class", SimpleThreadPool.class.getName())
21 .put("org.quartz.threadPool.threadCount", "4")
22 .put("org.quartz.threadPool.threadPriority", "4")
23 .put("org.quartz.jobStore.class", RAMJobStore.class.getName())
24 .build();
25
26 private static final Map<String, String> DEFAULT_CLUSTERED_CONFIG = ImmutableMap.<String, String>builder()
27 .put("org.quartz.scheduler.skipUpdateCheck", "true")
28 .put("org.quartz.scheduler.instanceName", "atlassian-scheduler-quartz1.clustered")
29 .put("org.quartz.threadPool.class", SimpleThreadPool.class.getName())
30 .put("org.quartz.threadPool.threadCount", "4")
31 .put("org.quartz.threadPool.threadPriority", "4")
32 .put("org.quartz.jobStore.class", Quartz1HardenedJobStore.class.getName())
33 .put("org.quartz.jobStore.isClustered", "true")
34 .build();
35
36 public static Properties getDefaultLocalSettings() {
37 return toProperties(DEFAULT_LOCAL_CONFIG);
38 }
39
40 public static Properties getDefaultClusteredSettings() {
41 return toProperties(DEFAULT_CLUSTERED_CONFIG);
42 }
43
44 private static Properties toProperties(final Map<String, String> defaultConfig) {
45 final Properties config = new Properties();
46 for (Map.Entry<String, String> entry : defaultConfig.entrySet()) {
47 config.setProperty(entry.getKey(), entry.getValue());
48 }
49 return config;
50 }
51 }