{
  "bundles": [
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-platform-document-routing-dm",
      "artifactVersion": "5.8",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.ecm.platform.routing.api",
          "org.nuxeo.ecm.platform.routing.core",
          "org.nuxeo.ecm.platform.routing.dashboard",
          "org.nuxeo.ecm.platform.routing.default",
          "org.nuxeo.ecm.platform.routing.dm",
          "org.nuxeo.ecm.platform.routing.web"
        ],
        "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing",
        "id": "grp:org.nuxeo.ecm.platform.routing",
        "name": "org.nuxeo.ecm.platform.routing",
        "parentIds": [
          "grp:org.nuxeo.ecm.platform"
        ],
        "readmes": [],
        "version": "5.8"
      },
      "bundleId": "org.nuxeo.ecm.platform.routing.dm",
      "components": [
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.lifecycle.LifeCycleService--types",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.CoreExtensions/Contributions/org.nuxeo.ecm.platform.routing.dm.CoreExtensions--types",
              "id": "org.nuxeo.ecm.platform.routing.dm.CoreExtensions--types",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.lifecycle.LifeCycleService",
                "name": "org.nuxeo.ecm.core.lifecycle.LifeCycleService",
                "type": "service"
              },
              "version": "5.8",
              "xml": "<extension point=\"types\" target=\"org.nuxeo.ecm.core.lifecycle.LifeCycleService\">\n    <types>\n      <type name=\"SimpleTask\">documentRouteElement</type>\n      <type name=\"FollowLifeCycleTransitionTask\">documentRouteElement</type>\n      <type name=\"PublishTask\">documentRouteElement</type>\n      <type name=\"ConditionalTask\">documentRouteElement</type>\n    </types>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.schema.TypeService--schema",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.CoreExtensions/Contributions/org.nuxeo.ecm.platform.routing.dm.CoreExtensions--schema",
              "id": "org.nuxeo.ecm.platform.routing.dm.CoreExtensions--schema",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.schema.TypeService",
                "name": "org.nuxeo.ecm.core.schema.TypeService",
                "type": "service"
              },
              "version": "5.8",
              "xml": "<extension point=\"schema\" target=\"org.nuxeo.ecm.core.schema.TypeService\">\n    <schema name=\"task_step\" prefix=\"tkst\" src=\"schemas/task_step.xsd\"/>\n    <schema name=\"conditional_task_step\" prefix=\"ctkst\" src=\"schemas/conditional_task_step.xsd\"/>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.schema.TypeService--doctype",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.CoreExtensions/Contributions/org.nuxeo.ecm.platform.routing.dm.CoreExtensions--doctype",
              "id": "org.nuxeo.ecm.platform.routing.dm.CoreExtensions--doctype",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.schema.TypeService",
                "name": "org.nuxeo.ecm.core.schema.TypeService",
                "type": "service"
              },
              "version": "5.8",
              "xml": "<extension point=\"doctype\" target=\"org.nuxeo.ecm.core.schema.TypeService\">\n\n    <facet name=\"TaskStep\">\n      <schema name=\"task_step\"/>\n    </facet>\n\n    <doctype extends=\"DocumentRouteStep\" name=\"SimpleTask\">\n      <facet name=\"RouteStep\"/>\n      <facet name=\"TaskStep\"/>\n      <facet name=\"Commentable\"/>\n    </doctype>\n\n   <doctype extends=\"SimpleTask\" name=\"FollowLifeCycleTransitionTask\">\n   </doctype>\n\n    <doctype extends=\"SimpleTask\" name=\"PublishTask\">\n    </doctype>\n    \n    <doctype extends=\"SimpleTask\" name=\"ConditionalTask\">\n      <schema name=\"conditional_task_step\"/>\n    </doctype>\n\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.CoreExtensions",
          "name": "org.nuxeo.ecm.platform.routing.dm.CoreExtensions",
          "requirements": [],
          "services": [],
          "version": "5.8",
          "xmlFileContent": "<component name=\"org.nuxeo.ecm.platform.routing.dm.CoreExtensions\"\n  version=\"1.0\">\n\n  <require>org.nuxeo.ecm.plateform.task.type</require>\n  <require>org.nuxeo.ecm.platform.routing.lifecycle.contrib</require>\n  <require>org.nuxeo.ecm.platform.routing.CoreExtensions</require>\n\n  <extension target=\"org.nuxeo.ecm.core.schema.TypeService\"\n    point=\"schema\">\n    <schema name=\"task_step\" src=\"schemas/task_step.xsd\"  prefix=\"tkst\" />\n    <schema name=\"conditional_task_step\" src=\"schemas/conditional_task_step.xsd\"  prefix=\"ctkst\" />\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.core.schema.TypeService\"\n    point=\"doctype\">\n\n    <facet name=\"TaskStep\">\n      <schema name=\"task_step\" />\n    </facet>\n\n    <doctype name=\"SimpleTask\" extends=\"DocumentRouteStep\">\n      <facet name=\"RouteStep\" />\n      <facet name=\"TaskStep\" />\n      <facet name=\"Commentable\" />\n    </doctype>\n\n   <doctype name=\"FollowLifeCycleTransitionTask\" extends=\"SimpleTask\">\n   </doctype>\n\n    <doctype name=\"PublishTask\" extends=\"SimpleTask\">\n    </doctype>\n    \n    <doctype name=\"ConditionalTask\" extends=\"SimpleTask\">\n      <schema name=\"conditional_task_step\" />\n    </doctype>\n\n\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.core.lifecycle.LifeCycleService\"\n    point=\"types\">\n    <types>\n      <type name=\"SimpleTask\">documentRouteElement</type>\n      <type name=\"FollowLifeCycleTransitionTask\">documentRouteElement</type>\n      <type name=\"PublishTask\">documentRouteElement</type>\n      <type name=\"ConditionalTask\">documentRouteElement</type>\n    </types>\n  </extension>\n\n\n</component>\n",
          "xmlFileName": "",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.ec.notification.service.NotificationService--templates",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.NotificationContrib/Contributions/org.nuxeo.ecm.platform.routing.dm.NotificationContrib--templates",
              "id": "org.nuxeo.ecm.platform.routing.dm.NotificationContrib--templates",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.ec.notification.service.NotificationService",
                "name": "org.nuxeo.ecm.platform.ec.notification.service.NotificationService",
                "type": "service"
              },
              "version": "5.8",
              "xml": "<extension point=\"templates\" target=\"org.nuxeo.ecm.platform.ec.notification.service.NotificationService\">\n\n    <template name=\"routingTaskAssigned\" src=\"templates/routingTaskAssigned.ftl\"/>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.NotificationContrib",
          "name": "org.nuxeo.ecm.platform.routing.dm.NotificationContrib",
          "requirements": [],
          "services": [],
          "version": "5.8",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component\n  name=\"org.nuxeo.ecm.platform.routing.dm.NotificationContrib\">\n\n  <extension\n    target=\"org.nuxeo.ecm.platform.ec.notification.service.NotificationService\"\n    point=\"templates\">\n\n    <template name=\"routingTaskAssigned\" src=\"templates/routingTaskAssigned.ftl\" />\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.routing.service--chainsToType",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.chainsToType.contrib/Contributions/org.nuxeo.ecm.platform.routing.dm.chainsToType.contrib--chainsToType",
              "id": "org.nuxeo.ecm.platform.routing.dm.chainsToType.contrib--chainsToType",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.routing.service",
                "name": "org.nuxeo.ecm.platform.routing.service",
                "type": "service"
              },
              "version": "5.8",
              "xml": "<extension point=\"chainsToType\" target=\"org.nuxeo.ecm.platform.routing.service\">\n    <mapping chainId=\"simpleTask\" documentType=\"SimpleTask\" undoChainIdFromDone=\"simpleUndo\" undoChainIdFromRunning=\"undoRunningTask\"/>\n    <mapping chainId=\"followLifeCycleTransitionTask\" documentType=\"FollowLifeCycleTransitionTask\" undoChainIdFromDone=\"simpleUndo\" undoChainIdFromRunning=\"undoRunningTask\"/>\n    <mapping chainId=\"publishTask\" documentType=\"PublishTask\" undoChainIdFromDone=\"simpleUndo\" undoChainIdFromRunning=\"undoRunningTask\"/>\n     <mapping chainId=\"conditionalTask\" documentType=\"ConditionalTask\" undoChainIdFromDone=\"simpleUndo\" undoChainIdFromRunning=\"undoRunningTask\"/>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.chainsToType.contrib",
          "name": "org.nuxeo.ecm.platform.routing.dm.chainsToType.contrib",
          "requirements": [],
          "services": [],
          "version": "5.8",
          "xmlFileContent": "<component name=\"org.nuxeo.ecm.platform.routing.dm.chainsToType.contrib\"\n  version=\"1.0\">\n\n  <extension target=\"org.nuxeo.ecm.platform.routing.service\"\n    point=\"chainsToType\">\n    <mapping documentType=\"SimpleTask\" chainId=\"simpleTask\"\n      undoChainIdFromRunning=\"undoRunningTask\" undoChainIdFromDone=\"simpleUndo\" />\n    <mapping documentType=\"FollowLifeCycleTransitionTask\" chainId=\"followLifeCycleTransitionTask\"\n      undoChainIdFromRunning=\"undoRunningTask\" undoChainIdFromDone=\"simpleUndo\" />\n    <mapping documentType=\"PublishTask\" chainId=\"publishTask\"\n      undoChainIdFromRunning=\"undoRunningTask\" undoChainIdFromDone=\"simpleUndo\" />\n     <mapping documentType=\"ConditionalTask\" chainId=\"conditionalTask\"\n      undoChainIdFromRunning=\"undoRunningTask\" undoChainIdFromDone=\"simpleUndo\" />\n  </extension>\n\n</component>\n",
          "xmlFileName": "",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.api.DocumentAdapterService--adapters",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.adapter.dm/Contributions/org.nuxeo.ecm.platform.routing.adapter.dm--adapters",
              "id": "org.nuxeo.ecm.platform.routing.adapter.dm--adapters",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.api.DocumentAdapterService",
                "name": "org.nuxeo.ecm.core.api.DocumentAdapterService",
                "type": "service"
              },
              "version": "5.8",
              "xml": "<extension point=\"adapters\" target=\"org.nuxeo.ecm.core.api.DocumentAdapterService\">\n    <adapter class=\"org.nuxeo.ecm.platform.routing.dm.adapter.RoutingTask\" factory=\"org.nuxeo.ecm.platform.routing.dm.adapter.RoutingTaskAdapterFactory\"/>\n    <adapter class=\"org.nuxeo.ecm.platform.routing.dm.adapter.TaskStep\" factory=\"org.nuxeo.ecm.platform.routing.dm.adapter.TaskStepAdapterFactory\"/>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.adapter.dm",
          "name": "org.nuxeo.ecm.platform.routing.adapter.dm",
          "requirements": [],
          "services": [],
          "version": "5.8",
          "xmlFileContent": "<component name=\"org.nuxeo.ecm.platform.routing.adapter.dm\" version=\"1.0\">\n\n  <extension target=\"org.nuxeo.ecm.core.api.DocumentAdapterService\"\n    point=\"adapters\">\n    <adapter class=\"org.nuxeo.ecm.platform.routing.dm.adapter.RoutingTask\"\n      factory=\"org.nuxeo.ecm.platform.routing.dm.adapter.RoutingTaskAdapterFactory\" />\n    <adapter class=\"org.nuxeo.ecm.platform.routing.dm.adapter.TaskStep\"\n      factory=\"org.nuxeo.ecm.platform.routing.dm.adapter.TaskStepAdapterFactory\" />\n  </extension>\n\n</component>\n",
          "xmlFileName": "",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.content.template.service.ContentTemplateService--factoryBinding",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.conditionalfolder.contentTemplateContrib/Contributions/org.nuxeo.ecm.platform.routing.dm.conditionalfolder.contentTemplateContrib--factoryBinding",
              "id": "org.nuxeo.ecm.platform.routing.dm.conditionalfolder.contentTemplateContrib--factoryBinding",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.content.template.service.ContentTemplateService",
                "name": "org.nuxeo.ecm.platform.content.template.service.ContentTemplateService",
                "type": "service"
              },
              "version": "5.8",
              "xml": "<extension point=\"factoryBinding\" target=\"org.nuxeo.ecm.platform.content.template.service.ContentTemplateService\">\n\n    <factoryBinding factoryName=\"SimpleTemplateFactory\" name=\"ConditionalfolderFactory\" targetType=\"ConditionalStepFolder\">\n      <template>\n        <templateItem description=\"Decisional task\" id=\"routeDocStep\" title=\"ConditionalTask\" typeName=\"ConditionalTask\"/>\n        <templateItem description=\"Branch executed if option1 is chosen\" id=\"option1\" title=\"Option 1\" typeName=\"StepFolder\"/>\n        <templateItem description=\"Branch executed if option2 is chosen\" id=\"option2\" title=\"Option 2\" typeName=\"StepFolder\"/>\n      </template>\n    </factoryBinding>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.conditionalfolder.contentTemplateContrib",
          "name": "org.nuxeo.ecm.platform.routing.dm.conditionalfolder.contentTemplateContrib",
          "requirements": [],
          "services": [],
          "version": "5.8",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.platform.routing.dm.conditionalfolder.contentTemplateContrib\">\n\n  <require>\n    org.nuxeo.ecm.platform.routing.conditionalfolder.contentTemplateContrib\n  </require>\n\n  <extension\n    target=\"org.nuxeo.ecm.platform.content.template.service.ContentTemplateService\"\n    point=\"factoryBinding\">\n\n    <factoryBinding name=\"ConditionalfolderFactory\"\n      factoryName=\"SimpleTemplateFactory\" targetType=\"ConditionalStepFolder\">\n      <template>\n        <templateItem typeName=\"ConditionalTask\" id=\"routeDocStep\"\n          title=\"ConditionalTask\" description=\"Decisional task\" />\n        <templateItem typeName=\"StepFolder\" id=\"option1\"\n          title=\"Option 1\" description=\"Branch executed if option1 is chosen\" />\n        <templateItem typeName=\"StepFolder\" id=\"option2\" title=\"Option 2\"\n          description=\"Branch executed if option2 is chosen\" />\n      </template>\n    </factoryBinding>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.operation.OperationServiceComponent--operations",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.operations/Contributions/org.nuxeo.ecm.platform.routing.dm.operations--operations",
              "id": "org.nuxeo.ecm.platform.routing.dm.operations--operations",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.operation.OperationServiceComponent",
                "name": "org.nuxeo.ecm.core.operation.OperationServiceComponent",
                "type": "service"
              },
              "version": "5.8",
              "xml": "<extension point=\"operations\" target=\"org.nuxeo.ecm.core.operation.OperationServiceComponent\">\n    <operation class=\"org.nuxeo.ecm.platform.routing.dm.operation.CreateRoutingTask\"/>\n    <operation class=\"org.nuxeo.ecm.platform.routing.dm.operation.RemoveRoutingTask\"/> \n    <operation class=\"org.nuxeo.ecm.platform.routing.dm.operation.SetCurrentRunningStepFromTask\"/>\n    <operation class=\"org.nuxeo.ecm.platform.routing.dm.operation.EvaluateCondition\"/>     \n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.operations",
          "name": "org.nuxeo.ecm.platform.routing.dm.operations",
          "requirements": [],
          "services": [],
          "version": "5.8",
          "xmlFileContent": "<component name=\"org.nuxeo.ecm.platform.routing.dm.operations\" version=\"1.0\">\n\n  <extension target=\"org.nuxeo.ecm.core.operation.OperationServiceComponent\"\n    point=\"operations\">\n    <operation\n      class=\"org.nuxeo.ecm.platform.routing.dm.operation.CreateRoutingTask\" />\n    <operation\n      class=\"org.nuxeo.ecm.platform.routing.dm.operation.RemoveRoutingTask\" /> \n    <operation\n      class=\"org.nuxeo.ecm.platform.routing.dm.operation.SetCurrentRunningStepFromTask\" />\n    <operation\n      class=\"org.nuxeo.ecm.platform.routing.dm.operation.EvaluateCondition\" />     \n  </extension>\n\n</component>\n",
          "xmlFileName": "",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.operation.OperationServiceComponent--chains",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.operation.chains/Contributions/org.nuxeo.ecm.platform.routing.dm.operation.chains--chains",
              "id": "org.nuxeo.ecm.platform.routing.dm.operation.chains--chains",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.operation.OperationServiceComponent",
                "name": "org.nuxeo.ecm.core.operation.OperationServiceComponent",
                "type": "service"
              },
              "version": "5.8",
              "xml": "<extension point=\"chains\" target=\"org.nuxeo.ecm.core.operation.OperationServiceComponent\">\n\n    <chain id=\"simpleTask\">\n      <operation id=\"Context.FetchDocument\"/>\n      <operation id=\"Workflow.CreateRoutingTask\">\n        <param name=\"accept operation chain\" type=\"string\">\n          setTaskDone\n        </param>\n        <param name=\"reject operation chain\" type=\"string\">\n          setTaskDone\n        </param>\n        <param name=\"mappingProperties\" type=\"Properties\">\n          <property key=\"dc:description\">StepTask:dc:description</property>\n          <property key=\"nt:directive\">StepTask:dc:description</property>\n        </param>\n       </operation> \n\t   <operation id=\"Context.RunDocumentOperationInNewTx\">\n\t     <param name=\"rollbackGlobalOnError\" type=\"boolean\">false</param>\n\t     <param name=\"id\" type=\"string\">sendTaskCreatedNotificationMail</param>\n\t   </operation>\n    </chain>\n    \n    <chain id=\"followLifeCycleTransitionTask\">\n      <operation id=\"Context.FetchDocument\"/>\n      <operation id=\"Workflow.CreateRoutingTask\">\n        <param name=\"accept operation chain\" type=\"string\">\n          followLifeCycleTransition\n        </param>\n        <param name=\"reject operation chain\" type=\"string\">\n          setTaskDone\n        </param>\n        <param name=\"mappingProperties\" type=\"Properties\">\n          <property key=\"dc:description\">StepTask:dc:description</property>\n        </param>\n      </operation>\n      <operation id=\"Context.RunDocumentOperationInNewTx\">\n\t     <param name=\"rollbackGlobalOnError\" type=\"boolean\">false</param>\n\t     <param name=\"id\" type=\"string\">sendTaskCreatedNotificationMail</param>\n\t   </operation>\n    </chain>\n    \n     <chain id=\"publishTask\">\n      <operation id=\"Context.FetchDocument\"/>\n      <operation id=\"Workflow.CreateRoutingTask\">\n        <param name=\"accept operation chain\" type=\"string\">\n          publishDocument\n        </param>\n        <param name=\"reject operation chain\" type=\"string\">\n          setTaskDone\n        </param>\n        <param name=\"mappingProperties\" type=\"Properties\">\n          <property key=\"dc:description\">StepTask:dc:description</property>\n        </param>\n      </operation>\n      <operation id=\"Context.RunDocumentOperationInNewTx\">\n\t     <param name=\"rollbackGlobalOnError\" type=\"boolean\">false</param>\n\t     <param name=\"id\" type=\"string\">sendTaskCreatedNotificationMail</param>\n\t   </operation>\n    </chain>\n    \n     <chain id=\"conditionalTask\">\n      <operation id=\"Context.FetchDocument\"/>\n      <operation id=\"Workflow.CreateRoutingTask\">\n        <param name=\"accept operation chain\" type=\"string\">\n          evaluateCondition\n        </param>\n        <param name=\"reject operation chain\" type=\"string\">\n          setTaskDone\n        </param>\n        <param name=\"mappingProperties\" type=\"Properties\">\n          <property key=\"dc:description\">StepTask:dc:description</property>\n        </param>\n      </operation>\n      <operation id=\"Context.RunDocumentOperationInNewTx\">\n\t     <param name=\"rollbackGlobalOnError\" type=\"boolean\">false</param>\n\t     <param name=\"id\" type=\"string\">sendTaskCreatedNotificationMail</param>\n\t   </operation>\n    </chain>\n\n    <chain id=\"setTaskDone\">\n      <operation id=\"Document.Routing.SetRunningStepFromTask\">\n         <param name=\"mappingComments\" type=\"boolean\">true</param>\n      </operation>\n      <operation id=\"Document.Routing.Resume.Step\"/>\n    </chain>\n  \n   <chain id=\"undoRunningTask\">\n     <operation id=\"Workflow.RemoveRoutingTask\"/>\n     <operation id=\"Document.Routing.BackToReady\"/>\n   </chain>\n  \n    <chain id=\"followLifeCycleTransition\">\n      <operation id=\"Context.FetchDocument\"/>\n      <operation id=\"Document.Routing.SetRunningStepFromTask\"/>\n      <operation id=\"Document.SetLifeCycle\">\n        <param name=\"value\" type=\"string\">expr:Context[\"document.routing.step\"].getDocument().getPropertyValue(\"tkst:directive\")</param>\n      </operation>\n\n      <operation id=\"Document.Routing.Resume.Step\"/>\n    </chain>\n    \n    <chain id=\"publishDocument\">\n      <operation id=\"Context.FetchDocument\"/>\n      <operation id=\"Document.Routing.SetRunningStepFromTask\"/>\n      <operation id=\"Document.Publish\">\n      \t<param name=\"target\" type=\"string\">expr:Context[\"document.routing.step\"].getDocument().getPropertyValue(\"tkst:directive\")</param>\n      </operation>\n      <operation id=\"Document.Routing.Resume.Step\"/>\n    </chain>\n    \n     <chain id=\"evaluateCondition\">\n      <operation id=\"Context.FetchDocument\"/>\n      <operation id=\"Document.Routing.SetRunningStepFromTask\"/>\n      <operation id=\"Document.Routing.EvaluateCondition\">\n      \t<param name=\"subject\" type=\"string\">expr:Context[\"document.routing.step\"].getDocument().getPropertyValue(\"ctkst:subject\")</param>\n      \t<param name=\"operator\" type=\"string\">expr:Context[\"document.routing.step\"].getDocument().getPropertyValue(\"ctkst:operator\")</param>\n      \t<param name=\"value\" type=\"string\">expr:Context[\"document.routing.step\"].getDocument().getPropertyValue(\"ctkst:value\")</param>\n      </operation>\n      <operation id=\"Update.NextStep.ConditionalFolder\">\n      \t<param name=\"nextStepPos\" type=\"string\">expr:Context['nextStepPos']</param>\n      </operation>\n      <operation id=\"Document.Routing.Resume.Step\"/>\n    </chain>\n    \n    <chain id=\"sendTaskCreatedNotificationMail\">\n      <operation id=\"Notification.SendMail\">\n        <param name=\"from\" type=\"string\">Administrator@nuxeo.com</param>\n        <param name=\"message\" type=\"string\">template:routingTaskAssigned</param>\n        <param name=\"subject\" type=\"string\">expr:Context[\"document.routing.step\"].getDocument().getPropertyValue(\"dc:title\")</param>\n        <param name=\"to\" type=\"stringlist\">expr:Fn.getEmails(Context[\"document.routing.task.actors\"])</param>\n        <param name=\"HTML\" type=\"boolean\">false</param>\n      </operation>\n   </chain>  \n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.operation.chains",
          "name": "org.nuxeo.ecm.platform.routing.dm.operation.chains",
          "requirements": [],
          "services": [],
          "version": "5.8",
          "xmlFileContent": "<component name=\"org.nuxeo.ecm.platform.routing.dm.operation.chains\"\n  version=\"1.0\">\n\n  <extension target=\"org.nuxeo.ecm.core.operation.OperationServiceComponent\"\n    point=\"chains\">\n\n    <chain id=\"simpleTask\">\n      <operation id=\"Context.FetchDocument\" />\n      <operation id=\"Workflow.CreateRoutingTask\">\n        <param type=\"string\" name=\"accept operation chain\">\n          setTaskDone\n        </param>\n        <param type=\"string\" name=\"reject operation chain\">\n          setTaskDone\n        </param>\n        <param name=\"mappingProperties\" type=\"Properties\">\n          <property key=\"dc:description\">StepTask:dc:description</property>\n          <property key=\"nt:directive\">StepTask:dc:description</property>\n        </param>\n       </operation> \n\t   <operation id=\"Context.RunDocumentOperationInNewTx\">\n\t     <param type=\"boolean\" name=\"rollbackGlobalOnError\">false</param>\n\t     <param type=\"string\" name=\"id\">sendTaskCreatedNotificationMail</param>\n\t   </operation>\n    </chain>\n    \n    <chain id=\"followLifeCycleTransitionTask\">\n      <operation id=\"Context.FetchDocument\" />\n      <operation id=\"Workflow.CreateRoutingTask\">\n        <param type=\"string\" name=\"accept operation chain\">\n          followLifeCycleTransition\n        </param>\n        <param type=\"string\" name=\"reject operation chain\">\n          setTaskDone\n        </param>\n        <param name=\"mappingProperties\" type=\"Properties\">\n          <property key=\"dc:description\">StepTask:dc:description</property>\n        </param>\n      </operation>\n      <operation id=\"Context.RunDocumentOperationInNewTx\">\n\t     <param type=\"boolean\" name=\"rollbackGlobalOnError\">false</param>\n\t     <param type=\"string\" name=\"id\">sendTaskCreatedNotificationMail</param>\n\t   </operation>\n    </chain>\n    \n     <chain id=\"publishTask\">\n      <operation id=\"Context.FetchDocument\" />\n      <operation id=\"Workflow.CreateRoutingTask\">\n        <param type=\"string\" name=\"accept operation chain\">\n          publishDocument\n        </param>\n        <param type=\"string\" name=\"reject operation chain\">\n          setTaskDone\n        </param>\n        <param name=\"mappingProperties\" type=\"Properties\">\n          <property key=\"dc:description\">StepTask:dc:description</property>\n        </param>\n      </operation>\n      <operation id=\"Context.RunDocumentOperationInNewTx\">\n\t     <param type=\"boolean\" name=\"rollbackGlobalOnError\">false</param>\n\t     <param type=\"string\" name=\"id\">sendTaskCreatedNotificationMail</param>\n\t   </operation>\n    </chain>\n    \n     <chain id=\"conditionalTask\">\n      <operation id=\"Context.FetchDocument\" />\n      <operation id=\"Workflow.CreateRoutingTask\">\n        <param type=\"string\" name=\"accept operation chain\">\n          evaluateCondition\n        </param>\n        <param type=\"string\" name=\"reject operation chain\">\n          setTaskDone\n        </param>\n        <param name=\"mappingProperties\" type=\"Properties\">\n          <property key=\"dc:description\">StepTask:dc:description</property>\n        </param>\n      </operation>\n      <operation id=\"Context.RunDocumentOperationInNewTx\">\n\t     <param type=\"boolean\" name=\"rollbackGlobalOnError\">false</param>\n\t     <param type=\"string\" name=\"id\">sendTaskCreatedNotificationMail</param>\n\t   </operation>\n    </chain>\n\n    <chain id=\"setTaskDone\">\n      <operation id=\"Document.Routing.SetRunningStepFromTask\">\n         <param type=\"boolean\" name=\"mappingComments\">true</param>\n      </operation>\n      <operation id=\"Document.Routing.Resume.Step\"/>\n    </chain>\n  \n   <chain id=\"undoRunningTask\">\n     <operation id=\"Workflow.RemoveRoutingTask\" />\n     <operation id=\"Document.Routing.BackToReady\" />\n   </chain>\n  \n    <chain id=\"followLifeCycleTransition\">\n      <operation id=\"Context.FetchDocument\"/>\n      <operation id=\"Document.Routing.SetRunningStepFromTask\"/>\n      <operation id=\"Document.SetLifeCycle\">\n        <param type=\"string\" name=\"value\">expr:Context[\"document.routing.step\"].getDocument().getPropertyValue(\"tkst:directive\")</param>\n      </operation>\n\n      <operation id=\"Document.Routing.Resume.Step\"/>\n    </chain>\n    \n    <chain id=\"publishDocument\">\n      <operation id=\"Context.FetchDocument\"/>\n      <operation id=\"Document.Routing.SetRunningStepFromTask\"/>\n      <operation id=\"Document.Publish\">\n      \t<param type=\"string\" name=\"target\">expr:Context[\"document.routing.step\"].getDocument().getPropertyValue(\"tkst:directive\")</param>\n      </operation>\n      <operation id=\"Document.Routing.Resume.Step\"/>\n    </chain>\n    \n     <chain id=\"evaluateCondition\">\n      <operation id=\"Context.FetchDocument\"/>\n      <operation id=\"Document.Routing.SetRunningStepFromTask\"/>\n      <operation id=\"Document.Routing.EvaluateCondition\">\n      \t<param type=\"string\" name=\"subject\">expr:Context[\"document.routing.step\"].getDocument().getPropertyValue(\"ctkst:subject\")</param>\n      \t<param type=\"string\" name=\"operator\">expr:Context[\"document.routing.step\"].getDocument().getPropertyValue(\"ctkst:operator\")</param>\n      \t<param type=\"string\" name=\"value\">expr:Context[\"document.routing.step\"].getDocument().getPropertyValue(\"ctkst:value\")</param>\n      </operation>\n      <operation id=\"Update.NextStep.ConditionalFolder\" >\n      \t<param type=\"string\" name=\"nextStepPos\">expr:Context['nextStepPos']</param>\n      </operation>\n      <operation id=\"Document.Routing.Resume.Step\"/>\n    </chain>\n    \n    <chain id=\"sendTaskCreatedNotificationMail\">\n      <operation id=\"Notification.SendMail\">\n        <param type=\"string\" name=\"from\">Administrator@nuxeo.com</param>\n        <param type=\"string\" name=\"message\">template:routingTaskAssigned</param>\n        <param type=\"string\" name=\"subject\">expr:Context[\"document.routing.step\"].getDocument().getPropertyValue(\"dc:title\")</param>\n        <param type=\"stringlist\" name=\"to\">expr:Fn.getEmails(Context[\"document.routing.task.actors\"])</param>\n        <param type=\"boolean\" name=\"HTML\">false</param>\n      </operation>\n   </chain>  \n  </extension>\n</component>\n",
          "xmlFileName": "",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.forms.layout.WebLayoutManager--widgets",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.layouts.webapp/Contributions/org.nuxeo.ecm.platform.routing.dm.layouts.webapp--widgets",
              "id": "org.nuxeo.ecm.platform.routing.dm.layouts.webapp--widgets",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.forms.layout.WebLayoutManager",
                "name": "org.nuxeo.ecm.platform.forms.layout.WebLayoutManager",
                "type": "service"
              },
              "version": "5.8",
              "xml": "<extension point=\"widgets\" target=\"org.nuxeo.ecm.platform.forms.layout.WebLayoutManager\">\n    <widget name=\"actors\" type=\"template\">\n        <fields>\n          <field>tkst:actors</field>\n        </fields>\n        <labels>\n          <label mode=\"any\"/>\n        </labels>\n        <properties mode=\"any\">\n         <property name=\"template\">\n            /widgets/user_suggestion_widget_template.xhtml\n          </property>\n          <property name=\"required\">true</property>\n        </properties>\n      </widget>\n    <widget name=\"directive_task\" type=\"template\">\n      <fields>\n        <field>tkst:directive</field>\n      </fields>\n      <labels>\n        <label mode=\"any\">label.review.directive</label>\n      </labels>\n      <translated>true</translated>\n      <properties mode=\"any\">\n        <property name=\"template\">\n          /widgets/routing_directive_widget_template.xhtml\n        </property>\n      </properties>\n    </widget>\n     <widget name=\"directive_publishing_task\" type=\"singleDocumentSuggestion\">\n      <fields>\n        <field>tkst:directive</field>\n      </fields>\n      <labels>\n        <label mode=\"any\">label.widget.task_step.publication</label>\n      </labels>\n      <translated>true</translated>\n      <properties mode=\"any\">\n        <property name=\"documentSuggestion_pageProviderName\">\n          default_section_suggestion\n        </property>\n      </properties>\n    </widget>\n    <widget name=\"directive_follow_lc_transion_task\" type=\"text\">\n      <fields>\n        <field>tkst:directive</field>\n      </fields>\n      <labels>\n        <label mode=\"any\">label.widget.review.life.cycle.transition</label>\n      </labels>\n      <translated>true</translated>\n    </widget>\n    <widget name=\"dueDate\" type=\"template\">\n      <fields>\n        <field>tkst:dueDate</field>\n      </fields>\n      <labels>\n        <label mode=\"any\">label.review.duedate</label>\n      </labels>\n      <translated>true</translated>\n      <properties mode=\"any\">\n        <property name=\"template\">\n          /widgets/routing_duedate_widget_template.xhtml\n        </property>\n      </properties>\n      </widget>\n     <widget name=\"automaticValidation\" type=\"checkbox\">\n        <translated>true</translated>\n        <fields>\n          <field>tkst:automaticValidation</field>\n        </fields>\n     </widget>\n     \n     <!-- overide the default widget to display the number of comments used by default in routing -->\n    <widget name=\"dr_listing_no_comments\" type=\"list\">\n        <labels>\n          <label mode=\"any\">label.content.header.comments</label>\n        </labels>\n        <translated>true</translated>\n        <fields>\n         <field>data.document.tkst.comments</field>\n        </fields>\n        <properties widgetMode=\"edit\">\n          <property name=\"orderable\">false</property>\n          <property name=\"diff\">false</property>\n          <property name=\"display\">table</property>\n          <property name=\"required\">false</property>\n          <property name=\"hideSubLabels\">true</property>\n        </properties>\n        <properties mode=\"any\"/>\n        <subWidgets>\n          <widget name=\"sub0\" type=\"text\">\n            <labels>\n              <label mode=\"any\"/>\n            </labels>\n            <translated>false</translated>\n            <fields>\n              <field/>\n            </fields>\n            <properties mode=\"any\"/>\n          </widget>\n        </subWidgets>\n      </widget>\n     \n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.forms.layout.WebLayoutManager--layouts",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.layouts.webapp/Contributions/org.nuxeo.ecm.platform.routing.dm.layouts.webapp--layouts",
              "id": "org.nuxeo.ecm.platform.routing.dm.layouts.webapp--layouts",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.forms.layout.WebLayoutManager",
                "name": "org.nuxeo.ecm.platform.forms.layout.WebLayoutManager",
                "type": "service"
              },
              "version": "5.8",
              "xml": "<extension point=\"layouts\" target=\"org.nuxeo.ecm.platform.forms.layout.WebLayoutManager\">\n\n    <layout name=\"task_step\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_default_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>actors</widget>\n        </row>\n        <row>\n          <widget>directive_task</widget>\n        </row>\n        <row>\n          <widget>dueDate</widget>\n        </row>\n        <row>\n          <widget>automaticValidation</widget>\n        </row>\n      </rows>\n    </layout>\n    \n    <layout name=\"follow_lc_transition_task_step\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_default_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>actors</widget>\n        </row>\n        <row>\n          <widget>directive_follow_lc_transion_task</widget>\n        </row>\n        <row>\n          <widget>dueDate</widget>\n        </row>\n      </rows>\n    </layout>\n    \n     <layout name=\"pusblishing_task_step\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_default_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>actors</widget>\n        </row>\n        <row>\n          <widget>directive_publishing_task</widget>\n        </row>\n        <row>\n          <widget>dueDate</widget>\n        </row>\n      </rows>\n    </layout>\n    \n    <layout name=\"conditional_task_step\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_default_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>actors</widget>\n        </row>\n        <row>\n          <widget>directive_conditional_subject</widget>\n          <widget>directive_conditional_operator</widget>\n          <widget>directive_conditional_value</widget>\n          <widget>operatorValidator</widget>\n        </row>\n        <row>\n          <widget>dueDate</widget>\n        </row>\n       </rows>\n       <widget name=\"directive_conditional_subject\" type=\"text\">\n        <fields>\n          <field>ctkst:subject</field>\n         </fields>\n         <labels>\n          <label mode=\"any\">label.review.directive</label>\n         </labels>\n         <translated>true</translated>\n         <properties widgetMode=\"edit\">\n           <property name=\"required\">true</property>\n           <property name=\"validator\">\n            #{routingTaskActions.validateSubject}\n          </property>\n         </properties>\n        </widget>\n        <widget name=\"directive_conditional_operator\" type=\"template\">\n          <labels>\n          <label mode=\"any\"/>\n         </labels>\n         <fields>\n          <field>ctkst:operator</field>\n          </fields>\n          <properties mode=\"any\">\n           <property name=\"template\">\n           /widgets/routing_directive_operator_widget_template.xhtml\n          </property>\n         </properties>\n         <properties widgetMode=\"edit\">\n           <property name=\"required\">true</property>\n         </properties>\n       </widget>\n       <widget name=\"directive_conditional_value\" type=\"text\">\n        <labels>\n          <label mode=\"any\"/>\n         </labels>\n       <fields>\n         <field>ctkst:value</field>\n       </fields>\n       <properties widgetMode=\"edit\">\n          <property name=\"required\">true</property>\n        </properties>\n     </widget>\n     <widget name=\"operatorValidator\" type=\"template\">\n       <fields>\n         <field/>\n       </fields>\n        <labels>\n          <label mode=\"any\"/>\n         </labels>\n        <properties widgetMode=\"edit\">\n           <property name=\"validator\">\n            #{routingTaskActions.validateValueForOperator}\n          </property>\n          <property name=\"template\">\n            /widgets/operator_value_validation_widget_template.xhtml\n          </property>\n        </properties>\n      </widget>\n    </layout>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.layouts.webapp",
          "name": "org.nuxeo.ecm.platform.routing.dm.layouts.webapp",
          "requirements": [],
          "services": [],
          "version": "5.8",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.platform.routing.dm.layouts.webapp\">\n\n  <require>org.nuxeo.ecm.platform.routing.layouts.webapp</require>\n  <require>com.nuxeo.document.routing.table.widget</require>\n\n   <extension target=\"org.nuxeo.ecm.platform.forms.layout.WebLayoutManager\"\n     point=\"widgets\">\n    <widget name=\"actors\" type=\"template\">\n        <fields>\n          <field>tkst:actors</field>\n        </fields>\n        <labels>\n          <label mode=\"any\"></label>\n        </labels>\n        <properties mode=\"any\">\n         <property name=\"template\">\n            /widgets/user_suggestion_widget_template.xhtml\n          </property>\n          <property name=\"required\">true</property>\n        </properties>\n      </widget>\n    <widget name=\"directive_task\" type=\"template\">\n      <fields>\n        <field>tkst:directive</field>\n      </fields>\n      <labels>\n        <label mode=\"any\">label.review.directive</label>\n      </labels>\n      <translated>true</translated>\n      <properties mode=\"any\">\n        <property name=\"template\">\n          /widgets/routing_directive_widget_template.xhtml\n        </property>\n      </properties>\n    </widget>\n     <widget name=\"directive_publishing_task\" type=\"singleDocumentSuggestion\">\n      <fields>\n        <field>tkst:directive</field>\n      </fields>\n      <labels>\n        <label mode=\"any\">label.widget.task_step.publication</label>\n      </labels>\n      <translated>true</translated>\n      <properties mode=\"any\">\n        <property name=\"documentSuggestion_pageProviderName\">\n          default_section_suggestion\n        </property>\n      </properties>\n    </widget>\n    <widget name=\"directive_follow_lc_transion_task\" type=\"text\">\n      <fields>\n        <field>tkst:directive</field>\n      </fields>\n      <labels>\n        <label mode=\"any\">label.widget.review.life.cycle.transition</label>\n      </labels>\n      <translated>true</translated>\n    </widget>\n    <widget name=\"dueDate\" type=\"template\">\n      <fields>\n        <field>tkst:dueDate</field>\n      </fields>\n      <labels>\n        <label mode=\"any\">label.review.duedate</label>\n      </labels>\n      <translated>true</translated>\n      <properties mode=\"any\">\n        <property name=\"template\">\n          /widgets/routing_duedate_widget_template.xhtml\n        </property>\n      </properties>\n      </widget>\n     <widget name=\"automaticValidation\" type=\"checkbox\">\n        <translated>true</translated>\n        <fields>\n          <field>tkst:automaticValidation</field>\n        </fields>\n     </widget>\n     \n     <!-- overide the default widget to display the number of comments used by default in routing -->\n    <widget name=\"dr_listing_no_comments\" type=\"list\">\n        <labels>\n          <label mode=\"any\">label.content.header.comments</label>\n        </labels>\n        <translated>true</translated>\n        <fields>\n         <field>data.document.tkst.comments</field>\n        </fields>\n        <properties widgetMode=\"edit\">\n          <property name=\"orderable\">false</property>\n          <property name=\"diff\">false</property>\n          <property name=\"display\">table</property>\n          <property name=\"required\">false</property>\n          <property name=\"hideSubLabels\">true</property>\n        </properties>\n        <properties mode=\"any\"/>\n        <subWidgets>\n          <widget name=\"sub0\" type=\"text\">\n            <labels>\n              <label mode=\"any\"></label>\n            </labels>\n            <translated>false</translated>\n            <fields>\n              <field></field>\n            </fields>\n            <properties mode=\"any\"/>\n          </widget>\n        </subWidgets>\n      </widget>\n     \n  </extension>  \n  \n  <extension target=\"org.nuxeo.ecm.platform.forms.layout.WebLayoutManager\"\n    point=\"layouts\">\n\n    <layout name=\"task_step\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_default_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>actors</widget>\n        </row>\n        <row>\n          <widget>directive_task</widget>\n        </row>\n        <row>\n          <widget>dueDate</widget>\n        </row>\n        <row>\n          <widget>automaticValidation</widget>\n        </row>\n      </rows>\n    </layout>\n    \n    <layout name=\"follow_lc_transition_task_step\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_default_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>actors</widget>\n        </row>\n        <row>\n          <widget>directive_follow_lc_transion_task</widget>\n        </row>\n        <row>\n          <widget>dueDate</widget>\n        </row>\n      </rows>\n    </layout>\n    \n     <layout name=\"pusblishing_task_step\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_default_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>actors</widget>\n        </row>\n        <row>\n          <widget>directive_publishing_task</widget>\n        </row>\n        <row>\n          <widget>dueDate</widget>\n        </row>\n      </rows>\n    </layout>\n    \n    <layout name=\"conditional_task_step\">\n      <templates>\n        <template mode=\"any\">/layouts/layout_default_template.xhtml\n        </template>\n      </templates>\n      <rows>\n        <row>\n          <widget>actors</widget>\n        </row>\n        <row>\n          <widget>directive_conditional_subject</widget>\n          <widget>directive_conditional_operator</widget>\n          <widget>directive_conditional_value</widget>\n          <widget>operatorValidator</widget>\n        </row>\n        <row>\n          <widget>dueDate</widget>\n        </row>\n       </rows>\n       <widget name=\"directive_conditional_subject\" type=\"text\">\n        <fields>\n          <field>ctkst:subject</field>\n         </fields>\n         <labels>\n          <label mode=\"any\">label.review.directive</label>\n         </labels>\n         <translated>true</translated>\n         <properties widgetMode=\"edit\">\n           <property name=\"required\">true</property>\n           <property name=\"validator\">\n            #{routingTaskActions.validateSubject}\n          </property>\n         </properties>\n        </widget>\n        <widget name=\"directive_conditional_operator\" type=\"template\">\n          <labels>\n          <label mode=\"any\"></label>\n         </labels>\n         <fields>\n          <field>ctkst:operator</field>\n          </fields>\n          <properties mode=\"any\">\n           <property name=\"template\">\n           /widgets/routing_directive_operator_widget_template.xhtml\n          </property>\n         </properties>\n         <properties widgetMode=\"edit\">\n           <property name=\"required\">true</property>\n         </properties>\n       </widget>\n       <widget name=\"directive_conditional_value\" type=\"text\">\n        <labels>\n          <label mode=\"any\"></label>\n         </labels>\n       <fields>\n         <field>ctkst:value</field>\n       </fields>\n       <properties widgetMode=\"edit\">\n          <property name=\"required\">true</property>\n        </properties>\n     </widget>\n     <widget name=\"operatorValidator\" type=\"template\">\n       <fields>\n         <field></field>\n       </fields>\n        <labels>\n          <label mode=\"any\"></label>\n         </labels>\n        <properties widgetMode=\"edit\">\n           <property name=\"validator\">\n            #{routingTaskActions.validateValueForOperator}\n          </property>\n          <property name=\"template\">\n            /widgets/operator_value_validation_widget_template.xhtml\n          </property>\n        </properties>\n      </widget>\n    </layout>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.types.TypeService--types",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.types/Contributions/org.nuxeo.ecm.platform.routing.dm.types--types",
              "id": "org.nuxeo.ecm.platform.routing.dm.types--types",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.types.TypeService",
                "name": "org.nuxeo.ecm.platform.types.TypeService",
                "type": "service"
              },
              "version": "5.8",
              "xml": "<extension point=\"types\" target=\"org.nuxeo.ecm.platform.types.TypeService\">\n\n    <type coreType=\"SimpleTask\" id=\"SimpleTask\">\n      <label>Simple Task</label>\n      <icon>/icons/step.png</icon>\n      <bigIcon>/icons/step_100.png</bigIcon>\n      <category>Steps</category>\n      <description>File.description</description>\n      <default-view>view_documents</default-view>\n      <edit-view>edit_route_element</edit-view>\n      <layouts mode=\"any\">\n        <layout>heading</layout>\n        <layout>task_step</layout>\n      </layouts>\n    </type>\n    \n     <type coreType=\"FollowLifeCycleTransitionTask\" id=\"FollowLifeCycleTransitionTask\">\n      <label>Follow life cycle transition task</label>\n      <icon>/icons/step.png</icon>\n      <bigIcon>/icons/step_100.png</bigIcon>\n      <category>Steps</category>\n      <description>File.description</description>\n      <default-view>view_documents</default-view>\n      <edit-view>edit_route_element</edit-view>\n      <layouts mode=\"any\">\n        <layout>heading</layout>\n        <layout>follow_lc_transition_task_step</layout>\n      </layouts>\n    </type>\n    \n     <type coreType=\"PublishTask\" id=\"PublishTask\">\n      <label>Publish Task</label>\n      <icon>/icons/step.png</icon>\n      <bigIcon>/icons/step_100.png</bigIcon>\n      <category>Steps</category>\n      <description>File.description</description>\n      <default-view>view_documents</default-view>\n      <edit-view>edit_route_element</edit-view>\n      <layouts mode=\"any\">\n        <layout>heading</layout>\n        <layout>pusblishing_task_step</layout>\n      </layouts>\n    </type>\n    \n    <type coreType=\"ConditionalTask\" id=\"ConditionalTask\">\n      <label>ConditionalTask</label>\n      <icon>/icons/step.png</icon>\n      <bigIcon>/icons/step_100.png</bigIcon>\n      <category>Steps</category>\n      <description>File.description</description>\n      <default-view>view_documents</default-view>\n      <edit-view>edit_route_element</edit-view>\n      <layouts mode=\"edit\">\n        <layout>conditional_task_step</layout>\n      </layouts>\n      <layouts mode=\"any\">\n        <layout>heading</layout>\n        <layout>conditional_task_step</layout>\n      </layouts>\n    </type>\n    \n\n    <type id=\"DocumentRoute\">\n      <subtypes>\n        <type>SimpleTask</type>\n        <type>FollowLifeCycleTransitionTask</type>\n        <type>PublishTask</type>\n      </subtypes>\n    </type>\n\n    <type id=\"StepFolder\">\n      <subtypes>\n        <type>SimpleTask</type>\n        <type>FollowLifeCycleTransitionTask</type>\n        <type>PublishTask</type>\n      </subtypes>\n    </type>\n\n    <type id=\"ConditionalStepFolder\">\n      <subtypes>\n        <type>ConditionalTask</type>\n        <type>StepFolder</type>\n      </subtypes>\n    </type>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.types",
          "name": "org.nuxeo.ecm.platform.routing.dm.types",
          "requirements": [],
          "services": [],
          "version": "5.8",
          "xmlFileContent": "<component name=\"org.nuxeo.ecm.platform.routing.dm.types\">\n\n  <require>org.nuxeo.ecm.platform.routing.types</require>\n\n  <extension target=\"org.nuxeo.ecm.platform.types.TypeService\" point=\"types\">\n\n    <type id=\"SimpleTask\" coreType=\"SimpleTask\">\n      <label>Simple Task</label>\n      <icon>/icons/step.png</icon>\n      <bigIcon>/icons/step_100.png</bigIcon>\n      <category>Steps</category>\n      <description>File.description</description>\n      <default-view>view_documents</default-view>\n      <edit-view>edit_route_element</edit-view>\n      <layouts mode=\"any\">\n        <layout>heading</layout>\n        <layout>task_step</layout>\n      </layouts>\n    </type>\n    \n     <type id=\"FollowLifeCycleTransitionTask\" coreType=\"FollowLifeCycleTransitionTask\">\n      <label>Follow life cycle transition task</label>\n      <icon>/icons/step.png</icon>\n      <bigIcon>/icons/step_100.png</bigIcon>\n      <category>Steps</category>\n      <description>File.description</description>\n      <default-view>view_documents</default-view>\n      <edit-view>edit_route_element</edit-view>\n      <layouts mode=\"any\">\n        <layout>heading</layout>\n        <layout>follow_lc_transition_task_step</layout>\n      </layouts>\n    </type>\n    \n     <type id=\"PublishTask\" coreType=\"PublishTask\">\n      <label>Publish Task</label>\n      <icon>/icons/step.png</icon>\n      <bigIcon>/icons/step_100.png</bigIcon>\n      <category>Steps</category>\n      <description>File.description</description>\n      <default-view>view_documents</default-view>\n      <edit-view>edit_route_element</edit-view>\n      <layouts mode=\"any\">\n        <layout>heading</layout>\n        <layout>pusblishing_task_step</layout>\n      </layouts>\n    </type>\n    \n    <type id=\"ConditionalTask\" coreType=\"ConditionalTask\">\n      <label>ConditionalTask</label>\n      <icon>/icons/step.png</icon>\n      <bigIcon>/icons/step_100.png</bigIcon>\n      <category>Steps</category>\n      <description>File.description</description>\n      <default-view>view_documents</default-view>\n      <edit-view>edit_route_element</edit-view>\n      <layouts mode=\"edit\">\n        <layout>conditional_task_step</layout>\n      </layouts>\n      <layouts mode=\"any\">\n        <layout>heading</layout>\n        <layout>conditional_task_step</layout>\n      </layouts>\n    </type>\n    \n\n    <type id=\"DocumentRoute\">\n      <subtypes>\n        <type>SimpleTask</type>\n        <type>FollowLifeCycleTransitionTask</type>\n        <type>PublishTask</type>\n      </subtypes>\n    </type>\n\n    <type id=\"StepFolder\">\n      <subtypes>\n        <type>SimpleTask</type>\n        <type>FollowLifeCycleTransitionTask</type>\n        <type>PublishTask</type>\n      </subtypes>\n    </type>\n\n    <type id=\"ConditionalStepFolder\">\n      <subtypes>\n        <type>ConditionalTask</type>\n        <type>StepFolder</type>\n      </subtypes>\n    </type>\n\n  </extension>\n\n</component>\n\n",
          "xmlFileName": "",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.query.api.PageProviderService--providers",
              "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.pageproviders.contrib/Contributions/org.nuxeo.ecm.platform.routing.dm.pageproviders.contrib--providers",
              "id": "org.nuxeo.ecm.platform.routing.dm.pageproviders.contrib--providers",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.query.api.PageProviderService",
                "name": "org.nuxeo.ecm.platform.query.api.PageProviderService",
                "type": "service"
              },
              "version": "5.8",
              "xml": "<extension point=\"providers\" target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\">\n   \n    <coreQueryPageProvider name=\"default_section_suggestion\">\n      <pattern escapeParameters=\"true\" quoteParameters=\"false\">\n        SELECT * FROM Section WHERE dc:title LIKE '?%' AND ecm:mixinType !=\n        'HiddenInNavigation' AND ecm:isCheckedInVersion = 0 AND\n        ecm:currentLifeCycleState != 'deleted'\n      </pattern>\n      <!-- sort column=\"dc:title\" ascending=\"true\" / sort by fulltext relevance -->\n      <pageSize>5</pageSize>\n    </coreQueryPageProvider>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm/org.nuxeo.ecm.platform.routing.dm.pageproviders.contrib",
          "name": "org.nuxeo.ecm.platform.routing.dm.pageproviders.contrib",
          "requirements": [],
          "services": [],
          "version": "5.8",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component name=\"org.nuxeo.ecm.platform.routing.dm.pageproviders.contrib\">\n\n  <extension target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\"\n    point=\"providers\">\n   \n    <coreQueryPageProvider name=\"default_section_suggestion\">\n      <pattern quoteParameters=\"false\" escapeParameters=\"true\">\n        SELECT * FROM Section WHERE dc:title LIKE '?%' AND ecm:mixinType !=\n        'HiddenInNavigation' AND ecm:isCheckedInVersion = 0 AND\n        ecm:currentLifeCycleState != 'deleted'\n      </pattern>\n      <!-- sort column=\"dc:title\" ascending=\"true\" / sort by fulltext relevance -->\n      <pageSize>5</pageSize>\n    </coreQueryPageProvider>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "",
          "xmlPureComponent": true
        }
      ],
      "fileName": "nuxeo-platform-document-routing-dm-5.8.jar",
      "groupId": "org.nuxeo.ecm.platform",
      "hierarchyPath": "/grp:org.nuxeo.ecm.platform/grp:org.nuxeo.ecm.platform.routing/org.nuxeo.ecm.platform.routing.dm",
      "id": "org.nuxeo.ecm.platform.routing.dm",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: Apache Maven\r\nBuilt-By: hudson\r\nBuild-Jdk: 1.7.0_09\r\nBundle-ManifestVersion: 2\r\nBundle-Version: 1.0.0\r\nBundle-Name: Nuxeo ECM Routing DM\r\nBundle-SymbolicName: org.nuxeo.ecm.platform.routing.dm;singleton=true\r\nBundle-Vendor: Nuxeo\r\nNuxeo-Component: OSGI-INF/dm-task-adapter-contrib.xml,OSGI-INF/dm-task\r\n -core-types-contrib.xml,OSGI-INF/dm-task-ecm-types-contrib.xml,OSGI-I\r\n NF/dm-task-operation-chains-contrib.xml,OSGI-INF/dm-task-type-chains-\r\n contrib.xml,OSGI-INF/dm-task-operations-contrib.xml,OSGI-INF/dm-task-\r\n layouts-contrib.xml,OSGI-INF/dm-pageproviders-contrib.xml,OSGI-INF/dm\r\n -document-routing-conditional-content-template-contrib.xml,OSGI-INF/d\r\n m-task-notification-contrib.xml\r\n\r\n",
      "packages": [],
      "requirements": [],
      "version": "5.8"
    }
  ],
  "creationDate": 1664792479769,
  "key": "Nuxeo Platform-5.8",
  "name": "Nuxeo Platform",
  "operations": [
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Routing",
      "contributingComponent": "org.nuxeo.ecm.platform.routing.dm.operations",
      "description": "Set the current running step as <document.routing.step> context variable. The comments from the task can be mapped to originating step.",
      "hierarchyPath": "/op:Document.Routing.SetRunningStepFromTask",
      "label": "Set Current Step from Task",
      "name": "Document.Routing.SetRunningStepFromTask",
      "operationClass": "org.nuxeo.ecm.platform.routing.dm.operation.SetCurrentRunningStepFromTask",
      "params": [
        {
          "description": null,
          "isRequired": false,
          "name": "mappingComments",
          "order": 0,
          "type": "boolean",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "void",
        "void"
      ],
      "url": "Document.Routing.SetRunningStepFromTask",
      "version": "5.8"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.platform.routing.dm.operations",
      "description": "Enable to create a routingTask bound to a route and its document. In <b>accept operation chain</b> and <b>reject operation chain</b> fields, you can put the operation chain ID of your choice among the one you contributed. Those operations will be executed when the user validates the task, depending on  whether he accepts or rejects the task. Extra (String) properties can be set on the taskVariables from the input document or from the step.",
      "hierarchyPath": "/op:Workflow.CreateRoutingTask",
      "label": "Create task",
      "name": "Workflow.CreateRoutingTask",
      "operationClass": "org.nuxeo.ecm.platform.routing.dm.operation.CreateRoutingTask",
      "params": [
        {
          "description": null,
          "isRequired": false,
          "name": "accept operation chain",
          "order": 4,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "mappingProperties",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "mappingTaskVariables",
          "order": 0,
          "type": "properties",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": false,
          "name": "reject operation chain",
          "order": 5,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "document",
        "documents",
        "documents"
      ],
      "since": "5.6",
      "url": "Workflow.CreateRoutingTask",
      "version": "5.8"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Routing",
      "contributingComponent": "org.nuxeo.ecm.platform.routing.dm.operations",
      "description": "Set the task as done.",
      "hierarchyPath": "/op:Document.Routing.EvaluateCondition",
      "label": "Set Task Done",
      "name": "Document.Routing.EvaluateCondition",
      "operationClass": "org.nuxeo.ecm.platform.routing.dm.operation.EvaluateCondition",
      "params": [
        {
          "description": null,
          "isRequired": true,
          "name": "operator",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "subject",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        },
        {
          "description": null,
          "isRequired": true,
          "name": "value",
          "order": 0,
          "type": "string",
          "values": [],
          "widget": null
        }
      ],
      "signature": [
        "document",
        "void"
      ],
      "url": "Document.Routing.EvaluateCondition",
      "version": "5.8"
    },
    {
      "@type": "NXOperation",
      "aliases": [],
      "category": "Services",
      "contributingComponent": "org.nuxeo.ecm.platform.routing.dm.operations",
      "description": " This operation removes all the tasks created when a given step is run.",
      "hierarchyPath": "/op:Workflow.RemoveRoutingTask",
      "label": "remove task",
      "name": "Workflow.RemoveRoutingTask",
      "operationClass": "org.nuxeo.ecm.platform.routing.dm.operation.RemoveRoutingTask",
      "params": [],
      "signature": [
        "void",
        "void"
      ],
      "since": "5.6",
      "url": "Workflow.RemoveRoutingTask",
      "version": "5.8"
    }
  ],
  "packages": [],
  "pluginSnapshots": {},
  "releaseDate": 1383001200000,
  "version": "5.8"
}