<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="scheduler_job_documentation_v1.1.xsl"?>
<description xmlns="http://www.sos-berlin.com/schema/scheduler_job_documentation_v1.1"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://www.sos-berlin.com/schema/scheduler_job_documentation_v1.1 http://www.sos-berlin.com/schema/scheduler_job_documentation_v1.1.xsd">
   <job xmlns:xhtml="http://www.w3.org/1999/xhtml"
        name="JobSchedulerRemoteCommandJob"
        title="Launch Commands, Jobs and Orders for Remote Execution"
        order="both">
      <script language="java"
              java_class="sos.scheduler.job.JobSchedulerRemoteCommandJob"
              resource="1"/>
  </job>
   <releases xmlns:xhtml="http://www.w3.org/1999/xhtml">
      <release id="1.0" created="2006-09-15" modified="2006-09-15">
         <title>Version 1.0</title>
         <author name="Andreas Püschel" email="andreas.pueschel@sos-berlin.com"/>
         <note language="de">
            <div xmlns="http://www.w3.org/1999/xhtml">Initiale Auslieferung</div>
         </note>
         <note language="en">
            <div xmlns="http://www.w3.org/1999/xhtml">Initial release</div>
         </note>
      </release>
  </releases>
   <resources xmlns:xhtml="http://www.w3.org/1999/xhtml">
      <file os="all" type="java" file="sos.scheduler.jar" id="1">
         <note language="de">
            <div xmlns="http://www.w3.org/1999/xhtml">Standard-Jobs der Auslieferung</div>
         </note>
         <note language="en">
            <div xmlns="http://www.w3.org/1999/xhtml">Standard jobs in distribution</div>
         </note>
      </file>
      <file os="all" type="java" file="sos.spooler.jar" id="2">
         <note language="de">
            <div xmlns="http://www.w3.org/1999/xhtml">Klasse Job_Impl</div>
         </note>
         <note language="en">
            <div xmlns="http://www.w3.org/1999/xhtml">Class Job_Impl</div>
         </note>
      </file>
      <file os="all" type="java" file="sos.xml.jar" id="3">
         <note language="de">
            <div xmlns="http://www.w3.org/1999/xhtml">Klasse SOSXMLXPath</div>
         </note>
         <note language="en">
            <div xmlns="http://www.w3.org/1999/xhtml">Class SOSXMLXPath</div>
         </note>
      </file>
  </resources>
   <configuration>
      <params id="job_parameter">
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_host"
                required="true"
                default_value="localhost">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Der Parameter benennt den Hostnamen oder die IP-Adresse des Remote Job Schedulers,
            in dem der Job oder Auftrag bzw. das Kommando ausgeführt werden soll.
          </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            This parameter specifies the hostname or ip address of the remote Job Scheduler
            which is to execute the remote job, order or command.
          </div>
            </note>
         </param>
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_port"
                required="true"
                default_value="4444">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Der Parameter spezifiziert die Port-Nummer des Remote Job Schedulers, 
            in dem der Job oder Auftrag bzw. das Kommando ausgeführt werden soll.
          </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            This parameter specifies the port number of the remote Job Scheduler
            which is to execute the remote job, order or command.
          </div>
            </note>
         </param>
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_protocol"
                required="false"
                default_value="tcp">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Der Parameter benennt <code>tcp</code> oder <code>udp</code> als
            Protokoll zur Kommunikation mit dem Remote Job Scheduler. Standard ist <code>tcp</code>.
            Bei Verwendung von <code>udp</code> sind keine Rückgaben von Kommandos möglich.
          </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            This parameter specifies <code>tcp</code> or <code>udp</code> as the protocol
            for communication with the remote Job Scheduler. Default is <code>tcp</code>.
            Should <code>udp</code> be used then results from the command cannot be returned.
          </div>
            </note>
         </param>
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_job"
                required="false">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Der Wert des Parameters ist der Name eines Jobs, der im Remote Job Scheduler
            konfiguriert ist und ausgeführt werden soll.
            <br/>
                  <br/>
            Zur Ausführung von Jobs sind keine weiteren Parameter zwingend erforderlich.
            <br/>
                  <br/>
            Es muss einer der folgenden Parameter angegeben sein:
            <br/>
                  <ul>
                     <li>
                        <em>scheduler_remote_job</em> zur Ausführung von Jobs</li>
                     <li>
                        <em>scheduler_remote_order</em> zur Ausführung von Aufträgen</li>
                     <li>
                        <em>scheduler_remote_command</em> zur Ausführung von belieben XML-Kommandos</li>
                  </ul>
               </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            The value of this parameter is the name of a job that 
            is configured in the remote Job Scheduler and is to be executed.
            <br/>
                  <br/>
            The execution of remote jobs does not require further parameters to be specified.
            <br/>
                  <br/>
            Note, however, that one of the following parameters must be specified:
            <br/>
                  <ul>
                     <li>
                        <em>scheduler_remote_job</em> for the execution of remote jobs</li>
                     <li>
                        <em>scheduler_remote_order</em> for the execution of remote orders</li>
                     <li>
                        <em>scheduler_remote_command</em> for the execution of remote xml commands</li>
                  </ul>
               </div>
            </note>
         </param>
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_order"
                required="false">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Der Wert des Parameters ist der Name bzw. die Identifikation eines Auftrags, der in
            einer Job-Kette des Remote Job Schedulers
            ausgeführt werden soll. Ist bereits ein Auftrag mit dieser
            Identifikation vorhanden, dann wird er per Voreinstellung überschrieben, siehe Parameter
            <em>scheduler_remote_order_replace</em>.
            <br/>
                  <br/>
            Die Ausführung von Aufträgen erfordert die Angabe des weiteren
            Parameters <em>scheduler_remote_order_job_chain</em> für die Job-Kette.
            <br/>
                  <br/>
            Es muss einer der folgenden Parameter angegeben sein:
            <br/>
                  <ul>
                     <li>
                        <em>scheduler_remote_job</em> zur Ausführung von Jobs</li>
                     <li>
                        <em>scheduler_remote_order</em> zur Ausführung von Aufträgen</li>
                     <li>
                        <em>scheduler_remote_command</em> zur Ausführung von belieben XML-Kommandos</li>
                  </ul>
               </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            The value of this parameter is the name or ID of an order that 
            is executed in a job chain on the remote Job Scheduler.
            Should an order with the same identification already exist, then it will be overwritten by default - 
            see the <em>scheduler_remote_order_replace</em> parameter.
            <br/>
                  <br/>
            The execution of remote orders requires the job chain to be specified 
            by the <em>scheduler_remote_order_job_chain</em> parameter.
            <br/>
                  <br/>
            Note that one of the following parameters must also be specified:
            <br/>
                  <ul>
                     <li>
                        <em>scheduler_remote_job</em> for the execution of remote jobs</li>
                     <li>
                        <em>scheduler_remote_order</em> for the execution of remote orders</li>
                     <li>
                        <em>scheduler_remote_command</em> for the execution or remote xml commands</li>
                  </ul>
               </div>
            </note>
         </param>
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_command"
                required="false">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Der Wert des Parameters enthält ein beliebiges XML Kommando, das 
            im Remote Job Scheduler ausgeführt wird.
            <br/>
                  <br/>
            Es muss einer der folgenden Parameter angegeben sein:
            <br/>
                  <ul>
                     <li>
                        <em>scheduler_remote_job</em> zur Ausführung von Jobs</li>
                     <li>
                        <em>scheduler_remote_order</em> zur Ausführung von Aufträgen</li>
                     <li>
                        <em>scheduler_remote_command</em> zur Ausführung von belieben XML-Kommandos</li>
                  </ul>
               </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            The value of this parameter specifies an xml command that is executed by the remote Job Scheduler.
            <br/>
                  <br/>
            Note that one of the following parameters must be specified:
            <br/>
                  <ul>
                     <li>
                        <em>scheduler_remote_job</em> for the execution of remote jobs</li>
                     <li>
                        <em>scheduler_remote_order</em> for the execution of remote orders</li>
                     <li>
                        <em>scheduler_remote_command</em> for the execution or remote xml commands</li>
                  </ul>
               </div>
            </note>
         </param>
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_start_at"
                required="false">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Der Parameter spezifiziert einen Startzeitpunkt für den Job oder Auftrag im
            Remote Job Scheduler in einem der Formate:
            <ul>
                     <li>
                        <em>now</em> für sofortigen Start (Voreinstellung)</li>
                     <li>
                        <em>now + SECONDS</em> für eine relative Startverzögerung um die angegebene Anzahl Sekunden</li>
                     <li>
                        <em>now + HH:MM[:SS]</em> für eine relative Startverzögerung um die angegebenen Anzahl von Stunden, Minuten, Sekunden</li>
                     <li>
                        <em>period</em> für den Startzeitpunkt zur nächsten möglichen Periode, die via &lt;run_time&gt; Element bestimmt ist</li>
                  </ul>
               </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            This parameter specifies a point in time at which a job or order should be executed
            by the remote Job Scheduler. One of the following formats may be used:
            <ul>
                     <li>
                        <em>now</em> to start immediately (default)</li>
                     <li>
                        <em>now + SECONDS</em> for a start which is to be delayed by the specified number of seconds</li>
                     <li>
                        <em>now + HH:MM[:SS]</em> for a start delayed by the specified number of hours, minutes, seconds</li>
                     <li>
                        <em>period</em> for a start allowed by the appropriate &lt;run_time&gt; element</li>
                  </ul>
               </div>
            </note>
         </param>
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_web_service"
                required="false">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Nachdem ein Job oder Auftrag ausgeführt wurde, kann sein Ergebnis mit einem Style Sheet
            transformiert und einem Web Service übergeben werden. Dieser Parameter benennt den Namen
            des Web Service, der das transformierte Ergebnis erhält.
          </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            The result from a job or order can be transformed with a style sheet after it has been completed 
            and then handed over to a Web Service. 
            This parameter specifies the name of the Web Service that is to receive the transformed result.
          </div>
            </note>
         </param>
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_order_replace"
                required="false"
                default_value="true">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Der Parameter bestimmt bei der Ausführung von Aufträgen im Remote Job Scheduler,
            siehe Parameter <em>scheduler_remote_order</em>, ob ein vorhandener Auftrag mit
            der gleichen Identifikation überschrieben wird.
          </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            This parameter specifies whether an existing order with the same identification in the remote Job Scheduler
            should be overwritten by this order - see the <em>scheduler_remote_order</em> parameter.
          </div>
            </note>
         </param>
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_order_job_chain"
                required="false">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Werden Aufträge zur Ausführung durch einen Remote Job Scheduler bestimmt,
            dann muss mit diesem Parameter der Name der Job-Kette angegeben werden,
            in der der Auftrag ausgeführt werden soll, siehe Parameter <em>scheduler_remote_order</em>.
          </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Should orders be executed by a remote Job Scheduler, then this parameter, which specifies
            the job chain that executes the order, is required  - see the <em>scheduler_remote_order</em> parameter.
          </div>
            </note>
         </param>
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_order_priority"
                required="false">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Werden Aufträge zur Ausführung durch einen Remote Job Scheduler bestimmt,
            dann benennt dieser Parameter die Priorität des Auftrags in der Job-Kette.
          </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Should orders be executed by a remote Job Scheduler, then this parameter specifies
            the priority of the order within the job chain.
          </div>
            </note>
         </param>
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_order_state"
                required="false">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Werden Aufträge zur Ausführung durch einen Remote Job Scheduler bestimmt,
            dann kann mit diesem Parameter der Status des Job-Knotens einer Job-Kette bestimmt werden, der den Auftrag beginnt.
            Fehlt dieser Parameter, dann wird der Auftrag vom ersten Job-Knoten der Job-Kette angenommen.
          </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Should orders be executed by a remote Job Scheduler, then this parameter specifies
            the state of the job node within the job chain that executes the order.
            Without this parameter the order will be executed by the first job node of the job chain.
          </div>
            </note>
         </param>
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_order_title"
                required="false">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Werden Aufträge zur Ausführung durch einen Remote Job Scheduler bestimmt,
            dann kann dem Auftrag zur leichteren Identifizierung ein Titel mitgegeben werden.
          </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Should orders be executed by a remote Job Scheduler, then this parameter specifies
            a title that is used to simplify the identification of the order.
          </div>
            </note>
         </param>
         <param xmlns:xhtml="http://www.w3.org/1999/xhtml"
                name="scheduler_remote_order_run_time"
                required="false">
            <note language="de">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Werden Aufträge zur Ausführung durch einen Remote Job Scheduler bestimmt,
            dann kann mit diesem Parameter der Startzeitpunkt bzw. der Wiederholungszeitpunkt
            des Auftrags angegeben werden.
            <br/>
                  <br/>
            Der Wert des Parameters ist das &lt;run_time&gt; Element. Beachten Sie bitte, dass
            die Klammern &lt; und &gt; in der Form &amp;lt; und &amp;gt; angegeben werden müssen,
            doppelte Anführungszeichen durch &amp;quot;.
          </div>
            </note>
            <note language="en">
               <div xmlns="http://www.w3.org/1999/xhtml">
            Should orders be executed by a remote Job Scheduler, then this parameter specifies
            the point in time at which the order is to be started or repeated.
            <br/>
                  <br/>
            The value of this parameter is the &lt;run_time&gt; element. 
            Note that the &lt; and &gt; brackets have to be specified as &amp;lt; and &amp;gt;,
            and double quotes as &amp;quot;.
          </div>
            </note>
         </param>
      </params>
   </configuration>
   <documentation xmlns:xhtml="http://www.w3.org/1999/xhtml" language="de">
      <div xmlns="http://www.w3.org/1999/xhtml">
      Der Job stellt eine Schnittstelle zur Ausführung von Jobs, Aufträgen und beliebigen XML Kommandos
      in einem Remote Job Scheduler bereit. 
      Dabei werden entsprechende XML Elemente generiert und an den Remote Job Scheduler via TCP oder UDP übertragen.
      <br/>
         <br/>
      Der Job kann selbständig oder auftragsgesteuert in einer Job-Kette betrieben werden.
      Er kann bspw. eingesetzt werden, um als Folge-Job eine nachfolgende Verarbeitung in einer
      anderen Job Scheduler Instanz anzustoßen.
    </div>
  </documentation>
   <documentation xmlns:xhtml="http://www.w3.org/1999/xhtml" language="en">
      <div xmlns="http://www.w3.org/1999/xhtml">
      This job implements an interface to execute jobs, orders and arbitrary xml commands in a remote Job Scheduler.
      The appropriate xml elements are generated and sent to the remote Job Scheduler via TCP or UDP.
      <br/>
         <br/>
      This job can be used standalone or for orders within a job chain.
      It could be used e.g. as a successor job to initiate subsequent processing steps
      in different Job Scheduler instances.
    </div>
  </documentation>
</description>