History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: JS-245
Type: Sub-task Sub-task
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Andreas Püschel
Reporter: Andreas Liebert
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Job Scheduler
run times (schedules) with names (JS-243)

add schedules/schedule elemens to config xml

Created: 25 January 2008 16:27   Updated: 24 July 2008 11:09
Component/s: Job Scheduler Binaries
Affects Version/s: None
Fix Version/s: 1.3.5

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown


 Description  « Hide
Add a new <schedules> element as child of <config>
<schedules> element can have <schedule> children:
<schedule> element has a name attribute and the same children as a <run_time> element, e.g.:

<schedules>
  <schedule name="in_the_morning" title="Morning Schedule">
      <weekdays>
        <day day="1 2 3 4 5">
          <period single_start="07:30"/>
        </day>
      </weekdays>
  </schedule>
  <schedule name="in_the_evening">
   ...
  </schedule>
</schedules>

Schedules can be referenced in run times:
<job name="hello">
  <process file="hello.sh"/>
  <run_time schedule="in_the_morning"/>
</job>

Enhancements to XML Answers:
/spooler/answer/job, /spooler/answer/jobs/job, /spooler/answer/order and all other nested order elements get a new attribute active_schedule, which points to the schedule currently used by this job/order (which may be a replacement schedule). If the job/order is not using a schedule, the attribute is not created.

<show_state what="schedules"/> returns a listing of all schedules and the jobs/orders which are using this schedule. Replacement schedules are also returned. Schedules which are currently active (either the standard schedule which is currently not replaced, or a replacement schedule which is currently replacing another schedule) get an attribute active="yes", all others have active="no", e.g.:

<spooler>
  <answer>
    <state>
      <schedules>
        <schedule path="/samples/in_the_morning" name="in_the_morning" title="Morning Schedule"
active="yes">
          <weekdays>
            <day day="1 2 3 4 5">
              <period single_start="07:30"/>
            </day>
          </weekdays>
          <file_based .../>
          <schedule.users>
            <schedule.user job="/samples/jobA11"/>
<schedule.user job_chain="/samples/chain_A"
order="/samples/order_A"/>
          </schedule.users>
        </schedule>
        <schedule path="/samples/in_the_morning_replacement_1"
name="in_the_morning_replacement_1" substitute="/samples/in_the_morning"
valid_from="2008-04-12 00:00:00" valid_to="2008-04-13 23:59:00" active="no">
          <weekdays>
            <day day="1 2 3 4 5">
             <period single_start="09:30"/>
             <period single_start="15:30"/>
            </day>
         </weekdays>
        </schedule>
      </schedules>
    </state>
  </answer>
</spooler>

 All   Comments   Work Log   Change History      Sort Order:
Andreas Liebert - 29 January 2008 11:22
Ich denke, es wäre eleganter, <run_time> als Unterelement von <schedule> wegzulassen, sodass <schedule> genau den Inhalt hat, den man in <run_time> hineinkopieren würde, also:

<schedules>
  <schedule name="in_the_morning">
      <weekdays>
        <day day="1 2 3 4 5">
          <period single_start="07:30"/>
        </day>
      </weekdays>
  </schedule>
  <schedule name="in_the_evening">
   ...
  </schedule>
</schedules>

Die Referenzierung würde dann als Unterelement von <run_time> erfolgen, damit man auch mehrere schedules kombinieren kann:
<job name="hello">
  <process file="hello.sh"/>
  <run_time>
    <schedule name="in_the_morning"/>
    <schedule name="in_the_evening"/>
  </run_time>
</job>

Oder analog zu den locks <schedule.use schedule="in_the_morning"/>...

Andreas Liebert - 30 January 2008 14:20
Die Wiederholung von schedules wird zunächst nicht implementiert.
In <run_time> gibt es ein schedule= Attribut.

(Sollen später Wiederholungen erlaubt werden, könnte man dies mit wiederholten run_time Elementen realisieren).

Das Beispiel sieht dann also so aus:
<schedules>
  <schedule name="in_the_morning">
      <weekdays>
        <day day="1 2 3 4 5">
          <period single_start="07:30"/>
        </day>
      </weekdays>
  </schedule>
  <schedule name="in_the_evening">
   ...
  </schedule>
</schedules>

<job name="hello">
  <process file="hello.sh"/>
  <run_time schedule="in_the_morning"/>
</job>

Joacim Zschimmer - 01 February 2008 11:31
Definition mit <run_time> und Abruf mit <run_time schedule="..."> sind zwei verschiedene Dinge. Besser wäre das bereits vorgeschlagene <schedule.use schedule="..."/>.

<schedule> ist identisch mit <run_time>.

Andreas Liebert - 15 April 2008 11:46
Die Beschreibung des Issues wurde aktualisiert. Es gilt, was dort steht, die Kommentare sind nicht von Bedeutung.

Andreas Liebert - 25 April 2008 16:51
Absatz über XML Antworten hinzugefügt

Andreas Liebert - 25 April 2008 17:43
Schedules haben auch einen title