wiki:Public/Docs/CAEConfigFile

Version 5 (modified by Administrator, 5 years ago) ( diff )

CAE configuration file

Cinnamon Asynchronous Engine (CAE) is a flexible framework for asynchronous, server-based tasks. The functionality CAE should load and the exact behaviour are highly configurable. The configuration is maintained in a file CinnamonAsynchronousEngine.config.xml residing in CAE's program folder on the server.

The following shows the content of a simple configuration file, referencing only Open Source plugins:

<config>
  <log enablefile="false" enableconsole="false">/opt/cae/log</log>
  <tasks>
    <task name="summary_writer" assembly="CinnamonAEResources" type="StandardTaskDefinitions.SummaryWriter">
      <custom_data>
        <!-- summary writer configuration-->
      </custom_data>
    </task>
    <task name="wf_task_dispatcher" assembly="WorkflowEngine" type="AETaskDefinitions.WFTaskDispatcher">
      <custom_data>
        <!-- summary writer configuration-->
      </custom_data>
    </task>
    <task name="wf_auto_task_runner" assembly="WorkflowEngine" type="AETaskDefinitions.WFAutoTaskRunner">
      <custom_data>
        <!-- summary writer configuration-->
      </custom_data>
    </task>
    <!-- other tasks -->
  </tasks>
  
  <repository id="demo" name="demo">
    <username>cae</username>
    <server id="content" name="content">https:/my_server.cinnamon-hosting.de/cinnamon/cinnamon/legacy</server>
    <password>password</password>
    <thread_wait milliseconds="5000" />
    
    <jobs active="false">
      <tasks>
      </tasks>
    </jobs>
    
    <objects active="true">
      <query batch_size="100">
        <BooleanQuery minimumNumberShouldMatch="1">
          <Clause occurs="should">
            <TermQuery fieldName="metadatachanged">true</TermQuery>
          </Clause>
          <Clause occurs="should">
            <TermQuery fieldName="contentchanged">true</TermQuery>
          </Clause>
        </BooleanQuery>
      </query>
      <tasks>
        <task name="summary_writer" />
        <task name="wf_task_dispatcher" />
        <task name="wf_auto_task_runner" />
      </tasks>
    </objects>
    
    <folders active="false">
      <query batch_size="100">
        <TermQuery fieldName="metadatachanged">true</TermQuery>
      </query>
      <tasks>
      </tasks>
    </folders>
  </repository>
</config>

Inside the root element, there are three second-level elements:

  • log, defining the logging behaviour.
  • tasks, defining the task classes and their configurations (the configuration was replaced with a comment). The same class can be loaded multiple times with a different name.
  • repository, defining the CAE login information and the task definitions to be applied.

In this example, three tasks are loaded and (symbolically) configured, and then they are applied to all objects with the flags metadatachanged or contentchanged set to true. There are no actions for folders nor are there so-called jobs that run independently on any particular objects at a given time.

Note: See TracWiki for help on using the wiki.