/** * Creates a new ClusterMessageCleaningCleaning service if it doesn't exist. */ public void createClusterMessageCleaningServiceIfNeeded(final I18nHelper i18n) { try { final String serviceName = i18n.getText(SERVICE_NAME_KEY); if (serviceManager.getServiceWithName(serviceName) == null) { final Map<String, String[]> params = new HashMap<String, String[]>(2); params.put(ClusterMessageCleaningService.RETENTION_PERIOD, new String[] { DEFAULT_RETENTION_MINS }); serviceManager.addService(serviceName, ClusterMessageCleaningService.class.getName(), DELAY, params); } } catch (final Exception e) // intentionally catching RuntimeException as well { LOG.error(i18nHelper.getText("admin.errors.setup.error.adding.service", e.toString())); } }
/** * Creates a new IndexCleaning service if it doesn't exist. */ public void createIndexCleaningServiceIfNeeded(final I18nHelper i18n) { try { final String serviceName = i18n.getText(SERVICE_NAME_KEY); if (serviceManager.getServiceWithName(serviceName) == null) { final Map<String, String[]> params = new HashMap<String, String[]>(2); params.put(ReplicatedIndexCleaningService.RETENTION_PERIOD, new String[] { DEFAULT_RETENTION_MINS }); serviceManager.addService(serviceName, ReplicatedIndexCleaningService.class.getName(), DELAY, params); } } catch (final Exception e) // intentionally catching RuntimeException as well { LOG.error(i18nHelper.getText("admin.errors.setup.error.adding.service", e.toString())); } }
/** * Creates a new Node State Checker service if it doesn't exist. */ public void createNodeCheckerServiceIfNeeded(final I18nHelper i18n) { try { final String serviceName = i18n.getText(SERVICE_NAME_KEY); if (serviceManager.getServiceWithName(serviceName) == null) { final Map<String, String[]> params = new HashMap<String, String[]>(0); serviceManager.addService(serviceName, NodeStateCheckerService.class.getName(), DELAY, params); } } catch (final Exception e) // intentionally catching RuntimeException as well { LOG.error(i18nHelper.getText("admin.errors.setup.error.adding.service", e.toString())); } } }
public void scheduleJob(final String name, final Class<? extends PluginJob> job, final Map<String, Object> jobDataMap, final Date startTime, final long repeatInterval) { // Create a map to hold the configuration for the job final Map<String, String[]> serviceDataMap = new HashMap<String, String[]>(); serviceDataMap.put(PLUGIN_JOB_NAME, new String[] { name }); // Put a service descriptor in the map final JiraPluginSchedulerServiceDescriptor sd = new JiraPluginSchedulerServiceDescriptor(); sd.setJob(job); sd.setJobDataMap(jobDataMap); serviceMap.put(name, sd); try { // Remove the service if it exists. removeServicesByName(name); serviceManager.addService(name, JiraPluginSchedulerService.class, repeatInterval, serviceDataMap); } catch (final Exception e) { log.error("Error adding service to jira", e); } }
@Override public void doUpgrade(boolean setupMode) throws Exception { serviceManager.addService( beanFactory.getInstance(applicationProperties.getDefaultLocale()).getText("admin.services.auditing.auditlogcleaner.service"), AuditLogCleaningService.class, ONE_DAY_IN_MILLIS); serviceManager.refreshAll(); } }
/** * Creates a new Backup service, or updates an already existing one with the parameters supplied. */ public void createOrUpdateBackupService(final I18nHelper i18n, final String backupPath) { try { final Map<String, String[]> params = new HashMap<String, String[]>(); params.put(ExportService.USE_DEFAULT_DIRECTORY, new String[] { "true" }); final String serviceName = geti18nTextWithDefault(i18n, SERVICE_NAME_KEY, "Backup Service"); if (serviceManager.getServiceWithName(serviceName) == null) { serviceManager.addService(serviceName, ExportService.class.getName(), DELAY, params); } else { serviceManager.editServiceByName(serviceName, DELAY, params); } getApplicationProperties().setString(APKeys.JIRA_PATH_BACKUP, backupPath); } catch (final Exception e) // intentionally catching RuntimeException as well { log.error("Error creating backup service", e); addErrorMessage(getText("admin.errors.setup.error.adding.service", e.toString())); } }
ComponentAccessor.getServiceManager().addService(name, clazz, "0 * * * * ?");
serviceManager.addService(name, "com.atlassian.sal.jira.scheduling.JiraPluginScheduler$JiraPluginSchedulerService", repeatInterval,
@Override public void updateRecoverySettings(final ApplicationUser user, final boolean recoveryEnabled, final String cronExpression) throws Exception { JiraServiceContainer service = serviceManager.getServiceWithName(IndexSnapshotService.getServiceName()); if (permissionManager.hasPermission(Permissions.SYSTEM_ADMIN, user)) { if (recoveryEnabled) { if (service == null) { serviceManager.addService(IndexSnapshotService.getServiceName(), IndexSnapshotService.class, cronExpression); } else { serviceManager.editService(service.getId(), cronExpression, Collections.<String, String[]>emptyMap()); } } else { if (service != null) { serviceManager.removeService(service.getId()); } } eventPublisher.publish(new IndexRecoveryEnabledEvent(recoveryEnabled)); } }
JiraServiceContainer serviceContainer = serviceManager.addService(getName(), getClazz(), cronExpression, delay, null); return getRedirect("EditService!default.jspa?id=" + serviceContainer.getId());