metrics.xts 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed Materials - Property of IBM
  4. IBM Cognos Products: cogadmin
  5. (C) Copyright IBM Corp. 2005, 2013
  6. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  7. -->
  8. <!--
  9. Copyright (C) 2008 Cognos ULC, an IBM Company. All rights reserved.
  10. Cognos (R) is a trademark of Cognos ULC, (formerly Cognos Incorporated).
  11. -->
  12. <xts:morphlet xmlns:xts="http://developer.cognos.com/schemas/xts/" messageBase="messages/cogadminuimsgs.xml" resolverBase="cogadmin" requiredCapability="canUseServerAdministrationTool">
  13. <xts:block id="frag_init" nodelist="env, credential" type="exec" mode="interpret" processor="XSLT" path="cogadmin/logicsheets/fragment_init.xslt" condition=".[not(/root/env/param[@name='frag-directive']='meta-only')]" mandatory="true"/>
  14. <xts:block id="getMeta" type="exec" mode="interpret" nodelist="header, env" processor="XSLT">
  15. <xsl:stylesheet version="1.0"
  16. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  17. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  18. xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  19. xmlns:bus="http://developer.cognos.com/schemas/bibus/3/"
  20. xmlns:xos="http://developer.cognos.com/schemas/xts/output/"
  21. xmlns:resourceId="xalan://com.cognos.admin.xts.ResourceId"
  22. exclude-result-prefixes="xsl xts xos xtsext SOAP-ENV bus">
  23. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  24. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  25. <xsl:variable name="resourceIdentifier">
  26. <xsl:choose>
  27. <xsl:when test="not(key('env-param','resourceID'))">
  28. <xsl:value-of select="resourceId:getDefaultResourceId(string(key('env-param','application')))"/>
  29. </xsl:when>
  30. <xsl:otherwise>
  31. <xsl:value-of select="resourceId:getMetricsAndSettingsResourceId(xtsext:urldecode(string(key('env-param','resourceID'))))"/>
  32. </xsl:otherwise>
  33. </xsl:choose>
  34. </xsl:variable>
  35. <xsl:template match="/">
  36. <xts:sequence>
  37. <!-- need to get the metadata -->
  38. <xts:append>
  39. <metadata>
  40. <xts:request protocol="GetMultipleResourceProperties">
  41. <SOAP-ENV:Envelope
  42. xmlns:nemo="http://developer.cognos.com/nemo"
  43. xmlns:wsrf-rp="http://docs.oasis-open.org/wsrf/rp-2"
  44. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  45. xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  46. <SOAP-ENV:Header>
  47. <xsl:copy-of select="/root/header/bus:biBusHeader"/>
  48. <nemo:cogadminHeader>
  49. <nemo:ResourceIdentifier><xsl:value-of select="$resourceIdentifier"/></nemo:ResourceIdentifier>
  50. </nemo:cogadminHeader>
  51. </SOAP-ENV:Header>
  52. <SOAP-ENV:Body>
  53. <wsrf-rp:GetMultipleResourceProperties>
  54. <wsrf-rp:ResourceProperty>MetadataDescriptor</wsrf-rp:ResourceProperty>
  55. <wsrf-rp:ResourceProperty>Caption</wsrf-rp:ResourceProperty>
  56. </wsrf-rp:GetMultipleResourceProperties>
  57. </SOAP-ENV:Body>
  58. </SOAP-ENV:Envelope>
  59. </xts:request>
  60. </metadata>
  61. </xts:append>
  62. <xts:append select="/root/output">
  63. <xos:part>
  64. <xos:entityHeader>
  65. <xos:param name="Content-Type">text/xml; charset=utf-8</xos:param>
  66. </xos:entityHeader>
  67. <xos:entityBody>
  68. <fragment>
  69. <info>
  70. <title>
  71. <xts:string id="IDS_ADM_MET_TITLE"/>
  72. </title>
  73. </info>
  74. <preferredTitle>
  75. <xts:transform name="XMLEncode">
  76. <xts:string id="IDS_ADM_MET_HEADER">
  77. <xts:param name="0">
  78. <xts:queryValue select="/root/metadata/*[local-name()='GetMultipleResourcePropertiesResponse']/*[local-name()='Caption']"/>
  79. </xts:param>
  80. </xts:string>
  81. </xts:transform>
  82. </preferredTitle>
  83. <state>
  84. <xsl:variable name="state">
  85. <xsl:choose>
  86. <!-- we have no state (first time we hit the page) so create the defaults -->
  87. <xsl:when test="not(/root/env/param[@name='frag-state'])">
  88. <xsl:text>&lt;param name="metricsFilter"&gt;None:Poor:Average:Good:NotApplicable::&lt;/param&gt;</xsl:text>
  89. </xsl:when>
  90. <xsl:otherwise>
  91. <xsl:text>&lt;param name="metricsFilter"&gt;</xsl:text>
  92. <xsl:value-of select="key('env-param','metricsFilter')"/>
  93. <xsl:text>&lt;/param&gt;</xsl:text>
  94. </xsl:otherwise>
  95. </xsl:choose>
  96. </xsl:variable>
  97. <xsl:value-of select="xtsext:base64encode($state,true())"/>
  98. </state>
  99. <meta>
  100. <globalValidator>
  101. <parameter>
  102. <name>scrollPos</name>
  103. <rule>
  104. <type>
  105. <unsignedInt/>
  106. </type>
  107. </rule>
  108. </parameter>
  109. <parameter>
  110. <name>expandedGroups</name>
  111. <rule>
  112. <type>
  113. <string/>
  114. </type>
  115. </rule>
  116. </parameter>
  117. </globalValidator>
  118. <transientProperties name="resourceID">
  119. <default>
  120. <value>cm:system</value>
  121. </default>
  122. <validate>
  123. <name>resourceID</name>
  124. <ruleRef id="fragment-cogadmin:resourceID"/>
  125. </validate>
  126. </transientProperties>
  127. <transientProperties name="resourceLabel">
  128. <validate>
  129. <name>resourceLabel</name>
  130. <ruleRef id="fragment-cogadmin:resourceLabel"/>
  131. </validate>
  132. </transientProperties>
  133. <requiredCapabilities>canUseServerAdministrationTool</requiredCapabilities>
  134. </meta>
  135. </fragment>
  136. </xos:entityBody>
  137. </xos:part>
  138. </xts:append>
  139. </xts:sequence>
  140. </xsl:template>
  141. </xsl:stylesheet>
  142. </xts:block>
  143. <xts:block id="renderMarkup" dependency="frag_init getMeta" type="exec" processor="XSLT">
  144. <xsl:stylesheet version="1.0"
  145. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  146. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  147. xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  148. xmlns:xos="http://developer.cognos.com/schemas/xts/output/"
  149. xmlns:bus="http://developer.cognos.com/schemas/bibus/3/"
  150. xmlns:nemo="http://developer.cognos.com/nemo"
  151. xmlns:val="http://developer.cognos.com/schemas/validator/1/"
  152. xmlns:fragment="urn:cognos:fragments:validator"
  153. xmlns:fragment-cogadmin="urn:cognos:fragments:validator:cogadmin"
  154. xmlns:resourceId="xalan://com.cognos.admin.xts.ResourceId"
  155. exclude-result-prefixes="xsl nemo xts SOAP-ENV xos bus">
  156. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  157. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  158. <xsl:variable name="resourceIdentifier">
  159. <xsl:choose>
  160. <xsl:when test="not(key('env-param','resourceID'))">
  161. <xsl:value-of select="resourceId:getDefaultResourceId(string(key('env-param','application')))"/>
  162. </xsl:when>
  163. <xsl:otherwise>
  164. <xsl:value-of select="resourceId:getMetricsAndSettingsResourceId(xtsext:urldecode(string(key('env-param','resourceID'))))"/>
  165. </xsl:otherwise>
  166. </xsl:choose>
  167. </xsl:variable>
  168. <xsl:template match="/">
  169. <xts:sequence>
  170. <xts:append select="/root/output/*[local-name()='part']/*[local-name()='entityBody']/fragment">
  171. <markup>
  172. <mimeType>text/html</mimeType>
  173. <markupXml>
  174. <xts:transform src="/cogadmin/transforms/presentation/renderFragment.xslt" processor="XSLT">
  175. <xts:param name="messageBase">/messages/cogadminuimsgs.xml</xts:param>
  176. <xts:param name="logicsheet">/cogadmin/logicsheets/admin.xslt</xts:param>
  177. <root>
  178. <!-- Generate UI markup using the response and metadata -->
  179. <xts:transform src="/cogadmin/transforms/gen-ui-markup/metrics.xslt" processor="XSLT">
  180. <xts:param name="messageBase">/messages/cogadminuimsgs.xml</xts:param>
  181. <xts:param name="logicsheet">/cogadmin/logicsheets/presentation/common.xslt</xts:param>
  182. <xts:param name="logicsheet">/cogadmin/logicsheets/admin.xslt</xts:param>
  183. <root>
  184. <!-- Get the metrics -->
  185. <xts:request protocol="GetMultipleResourceProperties" responseEnvelope="false">
  186. <SOAP-ENV:Envelope
  187. xmlns:nemo="http://developer.cognos.com/nemo"
  188. xmlns:resource-prop="http://developer.cognos.com/admin/properties"
  189. xmlns:wsrf-rp="http://docs.oasis-open.org/wsrf/rp-2"
  190. xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  191. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  192. xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  193. <SOAP-ENV:Header>
  194. <xsl:copy-of select="/root/header/bus:biBusHeader"/>
  195. <nemo:cogadminHeader>
  196. <nemo:ResourceIdentifier><xsl:value-of select="$resourceIdentifier"/></nemo:ResourceIdentifier>
  197. </nemo:cogadminHeader>
  198. </SOAP-ENV:Header>
  199. <SOAP-ENV:Body>
  200. <!-- Generate the GetMultipleResourceProperties request to get only the metric properties -->
  201. <xts:transform src="/cogadmin/transforms/gen-GetMultipleResourceProperties.xslt" processor="XSLT">
  202. <root>
  203. <xts:queryNode select="/root/metadata"/>
  204. <capability>http://docs.oasis-open.org/wsdm/2004/12/muws/capabilities/Metrics</capability>
  205. <capability>http://cognos.com/admin/supportedactions/metricgroup</capability>
  206. </root>
  207. </xts:transform>
  208. </SOAP-ENV:Body>
  209. </SOAP-ENV:Envelope>
  210. </xts:request>
  211. <resourceID>
  212. <xsl:value-of select="$resourceIdentifier"/>
  213. </resourceID>
  214. <xts:queryNode select="/root/metadata | /root/system | /root/user | /root/env"/>
  215. <contentLocale>
  216. <xsl:value-of select="/root/user/param[@name='contentLocale']"/>
  217. </contentLocale>
  218. <timezone>
  219. <xsl:value-of select="/root/user/param[@name='timeZoneID']"/>
  220. </timezone>
  221. </root>
  222. </xts:transform>
  223. <xts:queryNode select="/root/system | /root/session | /root/user"/>
  224. </root>
  225. </xts:transform>
  226. </markupXml>
  227. </markup>
  228. </xts:append>
  229. </xts:sequence>
  230. </xsl:template>
  231. </xsl:stylesheet>
  232. </xts:block>
  233. <!--
  234. ===============================================================================================
  235. debug - display debug information
  236. ===============================================================================================
  237. -->
  238. <xts:block id="debug" dependency="renderMarkup" condition=".[/root/session/param[@name='debug']='1']" type="exec" mode="output" processor="XSLT" mandatory="false" mimeType="text/html">
  239. <!-- get the debug logic sheet -->
  240. <xts:logicsheet path="cogadmin/logicsheets/debuglogic.xslt"/>
  241. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dbg="http://developer.cognos.com/schemas/xts/logicsheets/xslt/debug/" exclude-result-prefixes="dbg">
  242. <xsl:output method="html" version="1.0" encoding="UTF-8" indent="no"/>
  243. <xsl:template match="/">
  244. <dbg:dumpxml select="/root"/>
  245. </xsl:template>
  246. </xsl:stylesheet>
  247. </xts:block>
  248. </xts:morphlet>