1 package com.atlassian.scheduler.quartz2.spi;
2
3 import com.atlassian.scheduler.core.spi.SchedulerServiceConfiguration;
4 import com.atlassian.scheduler.quartz2.Quartz2DefaultSettingsFactory;
5
6 import javax.annotation.Nonnull;
7 import java.util.Properties;
8
9 /**
10 * Provides custom configuration settings for the Quartz 2.x scheduler service.
11 *
12 * @since v1.0
13 */
14 public interface Quartz2SchedulerConfiguration extends SchedulerServiceConfiguration {
15 /**
16 * Returns custom properties for configuring the scheduler that will be used to run
17 * local jobs.
18 * <p>
19 * <strong>WARNING</strong>: Since v1.3, the only property that provides a default
20 * value is {@code org.quartz.scheduler.skipUpdateCheck}, which is always forced to
21 * {@code true} regardless of the settings returned here. To get the old defaults,
22 * you can use {@link Quartz2DefaultSettingsFactory#getDefaultLocalSettings()}
23 * as the starting point.
24 * </p>
25 */
26 @Nonnull
27 Properties getLocalSettings();
28
29 /**
30 * Returns custom properties for configuring the scheduler that will be used to run
31 * clustered jobs.
32 * <p>
33 * <strong>WARNING</strong>: Since v1.3, the only property that provides a default
34 * value is {@code org.quartz.scheduler.skipUpdateCheck}, which is always forced to
35 * {@code true} regardless of the settings returned here. To get the old defaults,
36 * you can use {@link Quartz2DefaultSettingsFactory#getDefaultClusteredSettings()}
37 * as the starting point.
38 * </p>
39 */
40 @Nonnull
41 Properties getClusteredSettings();
42 }
43