<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="de">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Index (Archiva Components :: Spring Quartz 3.0-SNAPSHOT API)</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
<script type="text/javascript" src="script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Index (Archiva Components :: Spring Quartz 3.0-SNAPSHOT API)";
        }
    }
    catch(err) {
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="overview-summary.html">Overview</a></li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</li>
<li><a href="help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?index-all.html" target="_top">Frames</a></li>
<li><a href="index-all.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="contentContainer"><a href="#I:A">A</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:J">J</a>&nbsp;<a href="#I:L">L</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:U">U</a>&nbsp;<a href="#I:V">V</a>&nbsp;<a name="I:A">
<!--   -->
</a>
<h2 class="title">A</h2>
<dl>
<dt><a href="org/apache/archiva/components/scheduler/AbstractJob.html" title="class in org.apache.archiva.components.scheduler"><span class="typeNameLink">AbstractJob</span></a> - Class in <a href="org/apache/archiva/components/scheduler/package-summary.html">org.apache.archiva.components.scheduler</a></dt>
<dd>
<div class="block">Base class from which all <code>Job</code>s running in the
 scheduler should be derived from if they want access to the
 ServiceBroker.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/AbstractJob.html#AbstractJob--">AbstractJob()</a></span> - Constructor for class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/AbstractJob.html" title="class in org.apache.archiva.components.scheduler">AbstractJob</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultScheduler.html#addGlobalJobListener-org.quartz.JobListener-">addGlobalJobListener(JobListener)</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultScheduler.html" title="class in org.apache.archiva.components.scheduler">DefaultScheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/Scheduler.html#addGlobalJobListener-org.quartz.JobListener-">addGlobalJobListener(JobListener)</a></span> - Method in interface org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/Scheduler.html" title="interface in org.apache.archiva.components.scheduler">Scheduler</a></dt>
<dd>
<div class="block">Adds the job listener</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultScheduler.html#addGlobalTriggerListener-org.quartz.TriggerListener-">addGlobalTriggerListener(TriggerListener)</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultScheduler.html" title="class in org.apache.archiva.components.scheduler">DefaultScheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/Scheduler.html#addGlobalTriggerListener-org.quartz.TriggerListener-">addGlobalTriggerListener(TriggerListener)</a></span> - Method in interface org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/Scheduler.html" title="interface in org.apache.archiva.components.scheduler">Scheduler</a></dt>
<dd>
<div class="block">Adds a job trigger listener</div>
</dd>
</dl>
<a name="I:C">
<!--   -->
</a>
<h2 class="title">C</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/AbstractJob.html#CONTEXT">CONTEXT</a></span> - Static variable in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/AbstractJob.html" title="class in org.apache.archiva.components.scheduler">AbstractJob</a></dt>
<dd>
<div class="block">JobDataMap tag for the job's context.</div>
</dd>
<dt><a href="org/apache/archiva/components/scheduler/CronExpressionValidator.html" title="class in org.apache.archiva.components.scheduler"><span class="typeNameLink">CronExpressionValidator</span></a> - Class in <a href="org/apache/archiva/components/scheduler/package-summary.html">org.apache.archiva.components.scheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/CronExpressionValidator.html#CronExpressionValidator--">CronExpressionValidator()</a></span> - Constructor for class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/CronExpressionValidator.html" title="class in org.apache.archiva.components.scheduler">CronExpressionValidator</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:D">
<!--   -->
</a>
<h2 class="title">D</h2>
<dl>
<dt><a href="org/apache/archiva/components/scheduler/DefaultJobListener.html" title="class in org.apache.archiva.components.scheduler"><span class="typeNameLink">DefaultJobListener</span></a> - Class in <a href="org/apache/archiva/components/scheduler/package-summary.html">org.apache.archiva.components.scheduler</a></dt>
<dd>
<div class="block">Currently the role this class plays is set the value of the <code>JobDataMap</code>
 in the job so that the convenience methods for accessing the logger, context,
 service broker and configuration will work as expected.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultJobListener.html#DefaultJobListener--">DefaultJobListener()</a></span> - Constructor for class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultJobListener.html" title="class in org.apache.archiva.components.scheduler">DefaultJobListener</a></dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/archiva/components/scheduler/DefaultScheduler.html" title="class in org.apache.archiva.components.scheduler"><span class="typeNameLink">DefaultScheduler</span></a> - Class in <a href="org/apache/archiva/components/scheduler/package-summary.html">org.apache.archiva.components.scheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultScheduler.html#DefaultScheduler--">DefaultScheduler()</a></span> - Constructor for class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultScheduler.html" title="class in org.apache.archiva.components.scheduler">DefaultScheduler</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:E">
<!--   -->
</a>
<h2 class="title">E</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/AbstractJob.html#execute-org.quartz.JobExecutionContext-">execute(JobExecutionContext)</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/AbstractJob.html" title="class in org.apache.archiva.components.scheduler">AbstractJob</a></dt>
<dd>
<div class="block">Execute the Job.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/AbstractJob.html#EXECUTION_CONFIGURATION">EXECUTION_CONFIGURATION</a></span> - Static variable in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/AbstractJob.html" title="class in org.apache.archiva.components.scheduler">AbstractJob</a></dt>
<dd>
<div class="block">JobDataMap tag for the job's configuration.</div>
</dd>
</dl>
<a name="I:G">
<!--   -->
</a>
<h2 class="title">G</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#getClassLoadHelper--">getClassLoadHelper()</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#getContextKey--">getContextKey()</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#getDbFailureRetryInterval--">getDbFailureRetryInterval()</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#getIdleWaitTime--">getIdleWaitTime()</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#getInstanceId--">getInstanceId()</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#getInstanceName--">getInstanceName()</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/AbstractJob.html#getJobDataMap--">getJobDataMap()</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/AbstractJob.html" title="class in org.apache.archiva.components.scheduler">AbstractJob</a></dt>
<dd>
<div class="block">Get Job Data Map</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/AbstractJob.html#getLogger--">getLogger()</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/AbstractJob.html" title="class in org.apache.archiva.components.scheduler">AbstractJob</a></dt>
<dd>
<div class="block">Get the Logger.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultJobListener.html#getName--">getName()</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultJobListener.html" title="class in org.apache.archiva.components.scheduler">DefaultJobListener</a></dt>
<dd>
<div class="block">Get the name of the <code>JobListener</code>.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultScheduler.html#getProperties--">getProperties()</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultScheduler.html" title="class in org.apache.archiva.components.scheduler">DefaultScheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/Scheduler.html#getProperties--">getProperties()</a></span> - Method in interface org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/Scheduler.html" title="interface in org.apache.archiva.components.scheduler">Scheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultScheduler.html#getScheduler--">getScheduler()</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultScheduler.html" title="class in org.apache.archiva.components.scheduler">DefaultScheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#getThreadName--">getThreadName()</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#getUserTransactionURL--">getUserTransactionURL()</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#getWrapJobExecutionInUserTransaction--">getWrapJobExecutionInUserTransaction()</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:I">
<!--   -->
</a>
<h2 class="title">I</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultScheduler.html#initialize--">initialize()</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultScheduler.html" title="class in org.apache.archiva.components.scheduler">DefaultScheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/AbstractJob.html#interrupt--">interrupt()</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/AbstractJob.html" title="class in org.apache.archiva.components.scheduler">AbstractJob</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultScheduler.html#interruptSchedule-java.lang.String-java.lang.String-">interruptSchedule(String, String)</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultScheduler.html" title="class in org.apache.archiva.components.scheduler">DefaultScheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/Scheduler.html#interruptSchedule-java.lang.String-java.lang.String-">interruptSchedule(String, String)</a></span> - Method in interface org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/Scheduler.html" title="interface in org.apache.archiva.components.scheduler">Scheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/AbstractJob.html#isInterrupted--">isInterrupted()</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/AbstractJob.html" title="class in org.apache.archiva.components.scheduler">AbstractJob</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:J">
<!--   -->
</a>
<h2 class="title">J</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultJobListener.html#jobExecutionVetoed-org.quartz.JobExecutionContext-">jobExecutionVetoed(JobExecutionContext)</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultJobListener.html" title="class in org.apache.archiva.components.scheduler">DefaultJobListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultJobListener.html#jobToBeExecuted-org.quartz.JobExecutionContext-">jobToBeExecuted(JobExecutionContext)</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultJobListener.html" title="class in org.apache.archiva.components.scheduler">DefaultJobListener</a></dt>
<dd>
<div class="block">Called by the <code><a href="org/apache/archiva/components/scheduler/Scheduler.html" title="interface in org.apache.archiva.components.scheduler"><code>Scheduler</code></a></code> when a <code><a href="http://www.quartz-scheduler.org/api/2.3.0/org/quartz/Job.html?is-external=true" title="class or interface in org.quartz"><code>Job</code></a></code>
 is about to be executed (an associated <code><a href="http://www.quartz-scheduler.org/api/2.3.0/org/quartz/Trigger.html?is-external=true" title="class or interface in org.quartz"><code>Trigger</code></a></code> has
 occured).</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultJobListener.html#jobWasExecuted-org.quartz.JobExecutionContext-org.quartz.JobExecutionException-">jobWasExecuted(JobExecutionContext, JobExecutionException)</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultJobListener.html" title="class in org.apache.archiva.components.scheduler">DefaultJobListener</a></dt>
<dd>
<div class="block">Called by the <code><a href="org/apache/archiva/components/scheduler/Scheduler.html" title="interface in org.apache.archiva.components.scheduler"><code>Scheduler</code></a></code> after a <code><a href="http://www.quartz-scheduler.org/api/2.3.0/org/quartz/Job.html?is-external=true" title="class or interface in org.quartz"><code>Job</code></a></code>
 has been executed, and be for the associated <code>Trigger</code>'s
 <code>triggered(xx)</code> method has been called.</div>
</dd>
</dl>
<a name="I:L">
<!--   -->
</a>
<h2 class="title">L</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/AbstractJob.html#LOGGER">LOGGER</a></span> - Static variable in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/AbstractJob.html" title="class in org.apache.archiva.components.scheduler">AbstractJob</a></dt>
<dd>
<div class="block">JobDataMap tag for the job's logger.</div>
</dd>
</dl>
<a name="I:O">
<!--   -->
</a>
<h2 class="title">O</h2>
<dl>
<dt><a href="org/apache/archiva/components/scheduler/package-summary.html">org.apache.archiva.components.scheduler</a> - package org.apache.archiva.components.scheduler</dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/archiva/components/scheduler/configuration/package-summary.html">org.apache.archiva.components.scheduler.configuration</a> - package org.apache.archiva.components.scheduler.configuration</dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:S">
<!--   -->
</a>
<h2 class="title">S</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultScheduler.html#scheduleJob-org.quartz.JobDetail-org.quartz.Trigger-">scheduleJob(JobDetail, Trigger)</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultScheduler.html" title="class in org.apache.archiva.components.scheduler">DefaultScheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/Scheduler.html#scheduleJob-org.quartz.JobDetail-org.quartz.Trigger-">scheduleJob(JobDetail, Trigger)</a></span> - Method in interface org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/Scheduler.html" title="interface in org.apache.archiva.components.scheduler">Scheduler</a></dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/archiva/components/scheduler/Scheduler.html" title="interface in org.apache.archiva.components.scheduler"><span class="typeNameLink">Scheduler</span></a> - Interface in <a href="org/apache/archiva/components/scheduler/package-summary.html">org.apache.archiva.components.scheduler</a></dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration"><span class="typeNameLink">SchedulerConfiguration</span></a> - Class in <a href="org/apache/archiva/components/scheduler/configuration/package-summary.html">org.apache.archiva.components.scheduler.configuration</a></dt>
<dd>
<div class="block">Class to represent the configuration file for the proxy</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#SchedulerConfiguration--">SchedulerConfiguration()</a></span> - Constructor for class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/AbstractJob.html#SERVICE_MANAGER">SERVICE_MANAGER</a></span> - Static variable in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/AbstractJob.html" title="class in org.apache.archiva.components.scheduler">AbstractJob</a></dt>
<dd>
<div class="block">JobDataMap tag for the job's service broker.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#setClassLoadHelper-java.lang.String-">setClassLoadHelper(String)</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#setContextKey-java.lang.String-">setContextKey(String)</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#setDbFailureRetryInterval-java.lang.String-">setDbFailureRetryInterval(String)</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#setIdleWaitTime-java.lang.String-">setIdleWaitTime(String)</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#setInstanceId-java.lang.String-">setInstanceId(String)</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#setInstanceName-java.lang.String-">setInstanceName(String)</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/AbstractJob.html#setJobDataMap-org.quartz.JobDataMap-">setJobDataMap(JobDataMap)</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/AbstractJob.html" title="class in org.apache.archiva.components.scheduler">AbstractJob</a></dt>
<dd>
<div class="block">Set Job Data Map</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultScheduler.html#setProperties-java.util.Properties-">setProperties(Properties)</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultScheduler.html" title="class in org.apache.archiva.components.scheduler">DefaultScheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/Scheduler.html#setProperties-java.util.Properties-">setProperties(Properties)</a></span> - Method in interface org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/Scheduler.html" title="interface in org.apache.archiva.components.scheduler">Scheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#setThreadName-java.lang.String-">setThreadName(String)</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#setUserTransactionURL-java.lang.String-">setUserTransactionURL(String)</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html#setWrapJobExecutionInUserTransaction-java.lang.String-">setWrapJobExecutionInUserTransaction(String)</a></span> - Method in class org.apache.archiva.components.scheduler.configuration.<a href="org/apache/archiva/components/scheduler/configuration/SchedulerConfiguration.html" title="class in org.apache.archiva.components.scheduler.configuration">SchedulerConfiguration</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultScheduler.html#shutdown-boolean-">shutdown(boolean)</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultScheduler.html" title="class in org.apache.archiva.components.scheduler">DefaultScheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/Scheduler.html#shutdown-boolean-">shutdown(boolean)</a></span> - Method in interface org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/Scheduler.html" title="interface in org.apache.archiva.components.scheduler">Scheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultScheduler.html#stop--">stop()</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultScheduler.html" title="class in org.apache.archiva.components.scheduler">DefaultScheduler</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:U">
<!--   -->
</a>
<h2 class="title">U</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/DefaultScheduler.html#unscheduleJob-java.lang.String-java.lang.String-">unscheduleJob(String, String)</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/DefaultScheduler.html" title="class in org.apache.archiva.components.scheduler">DefaultScheduler</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/Scheduler.html#unscheduleJob-java.lang.String-java.lang.String-">unscheduleJob(String, String)</a></span> - Method in interface org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/Scheduler.html" title="interface in org.apache.archiva.components.scheduler">Scheduler</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:V">
<!--   -->
</a>
<h2 class="title">V</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/archiva/components/scheduler/CronExpressionValidator.html#validate-java.lang.String-">validate(String)</a></span> - Method in class org.apache.archiva.components.scheduler.<a href="org/apache/archiva/components/scheduler/CronExpressionValidator.html" title="class in org.apache.archiva.components.scheduler">CronExpressionValidator</a></dt>
<dd>
<div class="block">Validates a cron expression.</div>
</dd>
</dl>
<a href="#I:A">A</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:J">J</a>&nbsp;<a href="#I:L">L</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:U">U</a>&nbsp;<a href="#I:V">V</a>&nbsp;</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="overview-summary.html">Overview</a></li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</li>
<li><a href="help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?index-all.html" target="_top">Frames</a></li>
<li><a href="index-all.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2006&#x2013;2019 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>