<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Job engine on sillysky.net</title>
    <link>https://sillysky.net/docs/nyssr/records/job-engine/</link>
    <description>Recent content in Job engine on sillysky.net</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Tue, 09 Dec 2025 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://sillysky.net/docs/nyssr/records/job-engine/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>CRecordAddJob</title>
      <link>https://sillysky.net/docs/nyssr/records/job-engine/crecordaddjob/</link>
      <pubDate>Tue, 09 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://sillysky.net/docs/nyssr/records/job-engine/crecordaddjob/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://sillysky.net/images/LigneClaire/doc/CRecordAddJob.webp&#34; alt=&#34;CRecordAddJob&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;A new job is added to the &lt;a href=&#34;https://sillysky.net/docs/nyssr/job-engine/ijobengine/&#34;&gt;Job Engine&lt;/a&gt;. The job must implement the&#xA;interface &lt;a href=&#34;https://sillysky.net/docs/nyssr/job-engine/ijob/&#34;&gt;IJob&lt;/a&gt;. The new job will wait in a queue to be used until a&#xA;slot becomes available in a &lt;a href=&#34;https://sillysky.net/docs/nyssr/job-engine/ijobthread/&#34;&gt;job thread&lt;/a&gt; of the same priority.&lt;/p&gt;&#xA;&lt;p&gt;This message is sent internally to the Job Engine when the &lt;code&gt;appendJob()&lt;/code&gt;&#xA;method is called. However, it can also be sent to an engine by its owner.&lt;/p&gt;&#xA;&lt;pre class=&#34;ss-javacode&#34;&gt;&lt;code class=&#34;language-json&#34;&gt;{&#xA;  &#34;id&#34;: &#34;3a8ff4c4-dfc8-4bd8-b2b0-29d6b46a13e6&#34;,&#xA;  &#34;name&#34;: &#34;ADD_JOB&#34;,&#xA;  &#34;isNanoService&#34;: &#34;false&#34;,&#xA;  &#34;namespaces&#34;: &#34;&#34;,&#xA;  &#34;description&#34;: &#34;Add a job.&#34;,&#xA;  &#34;slots&#34;: [&#xA;    {&#xA;      &#34;key&#34;: &#34;1&#34;,&#xA;      &#34;name&#34;: &#34;JOB&#34;,&#xA;      &#34;direction&#34;: &#34;REQUEST&#34;,&#xA;      &#34;presenceConstraint&#34;: &#34;MANDATORY&#34;,&#xA;      &#34;type&#34;: &#34;OBJECT&#34;,&#xA;      &#34;description&#34;: &#34;The Job to add. Java type: &lt;a href=&#34;https://sillysky.net/docs/nyssr/job-engine/ijob/&#34;&gt;IJob&lt;/a&gt;&#34;&#xA;    }&#xA;  ]&#xA;}&lt;/code&gt;&lt;/pre&gt;</description>
    </item>
    <item>
      <title>CRecordAddJobEngineThread</title>
      <link>https://sillysky.net/docs/nyssr/records/job-engine/crecordaddjobenginethread/</link>
      <pubDate>Tue, 09 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://sillysky.net/docs/nyssr/records/job-engine/crecordaddjobenginethread/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://sillysky.net/images/LigneClaire/doc/CRecordAddJobEngineThread.webp&#34; alt=&#34;CRecordAddJobEngineThread&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This message is used to add a new thread to a &lt;a href=&#34;https://sillysky.net/docs/nyssr/job-engine/ijobengine/&#34;&gt;job engine&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;This message is sent internally to the Job Engine when the &lt;code&gt;appendThread()&lt;/code&gt;&#xA;method is called. However, it can also be sent to an engine by its owner.&lt;/p&gt;&#xA;&lt;p&gt;The priority of the thread can be specified with a number between 1 (very low)&#xA;and 10 (very high).&lt;/p&gt;&#xA;&lt;p&gt;The maximum number of targets in a job engine thread is limited to 1-1000.&lt;/p&gt;</description>
    </item>
    <item>
      <title>CRecordNoMoreJobs</title>
      <link>https://sillysky.net/docs/nyssr/records/job-engine/crecordnomorejobs/</link>
      <pubDate>Tue, 09 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://sillysky.net/docs/nyssr/records/job-engine/crecordnomorejobs/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://sillysky.net/images/LigneClaire/doc/CRecordNoMoreJobs.webp&#34; alt=&#34;CRecordNoMoreJobs&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This notification is sent by the &lt;a href=&#34;https://sillysky.net/docs/nyssr/job-engine/ijobengine/&#34;&gt;job engine&lt;/a&gt; to the owner when there&#xA;is no more job in progress.&lt;/p&gt;&#xA;&lt;pre class=&#34;ss-javacode&#34;&gt;&lt;code class=&#34;language-json&#34;&gt;{&#xA;  &#34;id&#34;: &#34;2d661800-888b-4b15-add0-0e120cf6da37&#34;,&#xA;  &#34;name&#34;: &#34;NO_MORE_JOBS&#34;,&#xA;  &#34;isNanoService&#34;: &#34;false&#34;,&#xA;  &#34;namespaces&#34;: &#34;&#34;,&#xA;  &#34;description&#34;: &#34;Notification: No more jobs are running or pending.&#34;,&#xA;  &#34;slots&#34;: [&#xA;  ]&#xA;}&lt;/code&gt;&lt;/pre&gt;</description>
    </item>
    <item>
      <title>CRecordNotifyJobFinished</title>
      <link>https://sillysky.net/docs/nyssr/records/job-engine/crecordjobfinished/</link>
      <pubDate>Tue, 09 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://sillysky.net/docs/nyssr/records/job-engine/crecordjobfinished/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://sillysky.net/images/LigneClaire/doc/CRecordNotifyJobFinished.webp&#34; alt=&#34;CRecordNotifyJobFinished&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This message is sent internally from a &lt;a href=&#34;https://sillysky.net/docs/nyssr/job-engine/ijobthread/&#34;&gt;job thread&lt;/a&gt; to the &lt;a href=&#34;https://sillysky.net/docs/nyssr/job-engine/ijobengine/&#34;&gt;job engine&lt;/a&gt; when a job has finished.&lt;br&gt;&#xA;The job engine will then start another waiting job in this thread.&lt;/p&gt;&#xA;&lt;pre class=&#34;ss-javacode&#34;&gt;&lt;code class=&#34;language-json&#34;&gt;{&#xA;  &#34;id&#34;: &#34;cf854cf1-cdc6-457d-b3b5-0a9100aa4739&#34;,&#xA;  &#34;name&#34;: &#34;NOTIFY_JOB_FINISHED&#34;,&#xA;  &#34;isNanoService&#34;: &#34;false&#34;,&#xA;  &#34;namespaces&#34;: &#34;&#34;,&#xA;  &#34;description&#34;: &#34;Notification: A job has been finished.&#34;,&#xA;  &#34;slots&#34;: [&#xA;    {&#xA;      &#34;key&#34;: &#34;1&#34;,&#xA;      &#34;name&#34;: &#34;THREAD_QUEUE_ID&#34;,&#xA;      &#34;direction&#34;: &#34;REQUEST&#34;,&#xA;      &#34;presenceConstraint&#34;: &#34;MANDATORY&#34;,&#xA;      &#34;type&#34;: &#34;ID&#34;,&#xA;      &#34;description&#34;: &#34;The Job Queue ID.&#34;&#xA;    },&#xA;    {&#xA;      &#34;key&#34;: &#34;2&#34;,&#xA;      &#34;name&#34;: &#34;JOB_NAME&#34;,&#xA;      &#34;direction&#34;: &#34;REQUEST&#34;,&#xA;      &#34;presenceConstraint&#34;: &#34;MANDATORY&#34;,&#xA;      &#34;type&#34;: &#34;STRING&#34;,&#xA;      &#34;description&#34;: &#34;The Job name.&#34;&#xA;    },&#xA;    {&#xA;      &#34;key&#34;: &#34;3&#34;,&#xA;      &#34;name&#34;: &#34;ELAPSED_TIME&#34;,&#xA;      &#34;direction&#34;: &#34;REQUEST&#34;,&#xA;      &#34;presenceConstraint&#34;: &#34;MANDATORY&#34;,&#xA;      &#34;type&#34;: &#34;LONG&#34;,&#xA;      &#34;description&#34;: &#34;The elapsed time in milliseconds.&#34;&#xA;    }&#xA;  ]&#xA;}&lt;/code&gt;&lt;/pre&gt;</description>
    </item>
    <item>
      <title>CRecordRemoveJob</title>
      <link>https://sillysky.net/docs/nyssr/records/job-engine/crecordremovejob/</link>
      <pubDate>Tue, 09 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://sillysky.net/docs/nyssr/records/job-engine/crecordremovejob/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://sillysky.net/images/LigneClaire/doc/CRecordRemoveJob.webp&#34; alt=&#34;CRecordRemoveJob&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Removes a job from the job engine. It does not matter whether the job is still&#xA;waiting to be started or has already been started.&lt;/p&gt;&#xA;&lt;p&gt;This message is sent internally to the Job Engine when the &lt;code&gt;removeJob()&lt;/code&gt;&#xA;method is called. However, it can also be sent to an engine by its owner.&lt;/p&gt;&#xA;&lt;pre class=&#34;ss-javacode&#34;&gt;&lt;code class=&#34;language-json&#34;&gt;{&#xA;  &#34;id&#34;: &#34;a92405b8-00a9-4ff8-9384-a1cae191a91b&#34;,&#xA;  &#34;name&#34;: &#34;REMOVE_JOB&#34;,&#xA;  &#34;isNanoService&#34;: &#34;false&#34;,&#xA;  &#34;namespaces&#34;: &#34;&#34;,&#xA;  &#34;description&#34;: &#34;Remove a job.&#34;,&#xA;  &#34;slots&#34;: [&#xA;    {&#xA;      &#34;key&#34;: &#34;1&#34;,&#xA;      &#34;name&#34;: &#34;JOB_ID&#34;,&#xA;      &#34;direction&#34;: &#34;REQUEST&#34;,&#xA;      &#34;presenceConstraint&#34;: &#34;MANDATORY&#34;,&#xA;      &#34;type&#34;: &#34;UUID&#34;,&#xA;      &#34;description&#34;: &#34;The Job ID.&#34;&#xA;    }&#xA;  ]&#xA;}&lt;/code&gt;&lt;/pre&gt;</description>
    </item>
  </channel>
</rss>
