123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- Licensed Materials - Property of IBM
- IBM Cognos Products: cogadmin
- (C) Copyright IBM Corp. 2011
- US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- -->
- <xts:morphlet xmlns:xts="http://developer.cognos.com/schemas/xts/" resolverBase="cogadmin">
- <xts:block id="loadInterfaces" type="exec" processor="XML">
- <xts:sequence>
- <xts:append select="/root">
- <actions>
- <xts:request protocol="FILEREAD" target="/cogadmin/controls/interface.xml"/>
- </actions>
- </xts:append>
- </xts:sequence>
- </xts:block>
-
-
- <xts:block id="getMeta" type="exec" dependency="loadInterfaces" processor="XSLT">
- <xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:xos="http://developer.cognos.com/schemas/xts/output/"
- xmlns:ctrls="http://ibm.cognos.com/xts/cogadmin/controls/dispatcher"
- exclude-result-prefixes="xsl xts xos ctrls">
- <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
-
- <xsl:variable name="actions">
- <xsl:for-each select="/root/actions/*[local-name()='interface']/*[local-name()='operation']">
- <xsl:variable name="rawOperation"><xsl:value-of select="@name"/></xsl:variable>
- <xsl:variable name="operation" select="normalize-space($rawOperation)"/>
- <xsl:if test="$operation != ''">
- <xsl:value-of select="$operation"/>
- <xsl:if test="position() != last()">
- <xsl:text>,</xsl:text>
- </xsl:if>
- </xsl:if>
- </xsl:for-each>
- </xsl:variable>
- <xsl:template match="/">
- <xts:sequence>
- <xts:append select="/root/output">
- <xos:part>
- <xos:entityHeader>
- <xos:param name="Content-Type">text/xml; charset=utf-8</xos:param>
- </xos:entityHeader>
- <xos:entityBody>
- <fragment>
- <info>
- <title>Todo</title>
- </info>
- <meta>
- <globalValidator>
- <parameter>
- <namePattern>
- <regex>actionResourceID_[0-9]$</regex>
- </namePattern>
- <ruleRef id="fragment-cogadmin:resourceID"/>
- </parameter>
- <parameter>
- <namePattern>
- <regex>actionResourceID</regex>
- </namePattern>
- <ruleRef id="fragment-cogadmin:resourceID"/>
- </parameter>
- <parameter>
- <name>actionQRBT</name>
- <rule>
- <enumeration>
- <list>containedBy,dispatchers</list>
- </enumeration>
- </rule>
- </parameter>
- <parameter>
- <name>action</name>
- <rule>
- <enumeration>
- <list><xsl:value-of select="$actions"/></list>
- </enumeration>
- </rule>
- </parameter>
- <parameter>
- <name>actionType</name>
- <ruleRef id="fragment-cogadmin:actionType"/>
- </parameter>
- <parameter>
- <name>actionContextID</name>
- <ruleRef id="fragment-cogadmin:actionContextID"/>
- </parameter>
- <parameter>
- <name>actionLabel</name>
- <rule>
- <type>
- <string maxLength="255"/>
- </type>
- </rule>
- </parameter>
- </globalValidator>
- </meta>
- </fragment>
- </xos:entityBody>
- </xos:part>
- </xts:append>
- </xts:sequence>
- </xsl:template>
- </xsl:stylesheet>
- </xts:block>
-
- <xts:block id="dispatch" type="exec" dependency="getMeta" processor="XSLT" condition=".[not(/root/env/param[@name='frag-directive']='meta-only')]">
- <xts:logicsheet path="logicsheets/buslogic.xslt"/>
- <xts:logicsheet path="logicsheets/presentation/dialog/connections.xslt"/>
- <xsl:stylesheet
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/"
- xmlns:ctrls="http://ibm.cognos.com/xts/cogadmin/controls/dispatcher"
- version="1.0">
-
- <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
- <xsl:key name="env-param" match="/root/env/param" use="@name"/>
-
- <xsl:template match="/root">
- <xts:sequence>
- <xts:append select="/root/output/*[local-name()='part']/*[local-name()='entityBody']/fragment">
- <send:request provider="xts">
- <xsl:variable name="requestName">
- <xsl:choose>
- <xsl:when test="key('env-param', 'dispatchAction') != ''">
- <xsl:value-of select="key('env-param', 'dispatchAction')"/>
- </xsl:when>
- <xsl:when test="key('env-param', 'action') != ''">
- <xsl:value-of select="key('env-param', 'action')"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>performDefaultAction</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <xsl:element name="{$requestName}" namespace="http://ibm.cognos.com/xts/cogadmin/controls/dispatcher"/>
- </send:request>
- </xts:append>
- </xts:sequence>
- </xsl:template>
- </xsl:stylesheet>
- </xts:block>
- </xts:morphlet>
|