<?xml version="1.0"?>
<ruleset id="technology-usage-integration"
    xmlns="http://windup.jboss.org/schema/jboss-ruleset"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://windup.jboss.org/schema/jboss-ruleset http://windup.jboss.org/schema/jboss-ruleset/windup-jboss-ruleset.xsd">
    <metadata>
        <description>
            This ruleset provides statistical summaries of embedded 3rd party frameworks.
        </description>
        <dependencies>
            <addon id="org.jboss.windup.rules,windup-rules-javaee,3.0.0.Final" />
            <addon id="org.jboss.windup.rules,windup-rules-java,3.0.0.Final" />
        </dependencies>
        <phase>PostMigrationRulesPhase</phase>
    </metadata>
    <rules>
      <rule id="technology-usage-integration-00001">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">Apache Camel</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="Camel">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00002">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">Teiid</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="Teiid">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00003">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">Spring Integration</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="Spring Integration">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00004">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">Ikasan</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="Ikasan">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00005">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">Swagger</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="Swagger">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00006">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">Apiman</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="Apiman">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00007">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">3scale</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="3scale">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00008">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">Istio</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="Istio">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00009">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">ServiceMix</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="ServiceMix">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00010">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">Mule</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="Mule">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00011">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">Petals EIP</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="Petals EIP">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00012">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">SwitchYard</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="SwitchYard">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00013">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">Apache Synapse</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="Apache Synapse">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00014">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">WSO2</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="WSO2">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
      <rule id="technology-usage-integration-00015">
          <when>
              <graph-query discriminator="TechnologyTagModel">
                  <property name="name">Talend ESB</property>
              </graph-query>
          </when>
          <perform>
              <technology-identified name="Talend ESB">
                  <tag name="Execute"/>
                  <tag name="Embedded"/>
                  <tag name="Integration"/>
              </technology-identified>
          </perform>
      </rule>
    </rules>
</ruleset>
