settings_jmxProxyHostDispatchers.xts 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed Materials - Property of IBM
  4. IBM Cognos Products: ps
  5. (C) Copyright IBM Corp. 2011, 2014
  6. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  7. -->
  8. <xts:morphlet xmlns:xts="http://developer.cognos.com/schemas/xts/" messageBase="messages/portal.xml, messages/portalRL.xml" requiredCapability="canUseAdministrationPortal">
  9. <xts:block id="actionController" processor="XSLT" type="exec" nodelist="env" mandatory="true">
  10. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  11. exclude-result-prefixes="xts">
  12. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  13. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  14. <xsl:template match="/">
  15. <xts:sequence>
  16. <xts:append select="/root">
  17. <xsl:choose>
  18. <xsl:when test="key('env-param', 'controller_state') = 'saveAndClose'">
  19. <saveAndClose/>
  20. </xsl:when>
  21. <xsl:when test="key('env-param', 'controller_state') ='addEntries|finished'">
  22. <actionAddEntries/>
  23. <actionShowContent/>
  24. <isDirty/>
  25. </xsl:when>
  26. <xsl:when test="key('env-param', 'controller_state') ='addEntries|canceled'">
  27. <actionAddEntries/>
  28. <actionShowContent/>
  29. </xsl:when>
  30. <xsl:when test="starts-with(key('env-param', 'controller_state'),'addEntries|')">
  31. <actionAddEntries/>
  32. </xsl:when>
  33. <xsl:when test="key('env-param', 'controller_state') ='deleteEntries'">
  34. <actionDeleteEntries/>
  35. <actionShowContent/>
  36. <isDirty/>
  37. </xsl:when>
  38. <xsl:when test="key('env-param', 'jmxProxyHostDispatchers')">
  39. <actionShowContent/>
  40. </xsl:when>
  41. <xsl:otherwise>
  42. <actionQueryCM/>
  43. <actionShowContent/>
  44. </xsl:otherwise>
  45. </xsl:choose>
  46. </xts:append>
  47. </xts:sequence>
  48. </xsl:template>
  49. </xsl:stylesheet>
  50. </xts:block>
  51. <!--
  52. Handle saving form when client side sorting still needs to be committed
  53. -->
  54. <xts:block id="autoSaveAndClose" mode="output" processor="XSLT" type="exec" dependency="formlogic_init" condition=".[/root/saveAndClose]" mimeType="text/html" mandatory="false">
  55. <xts:logicsheet path="logicsheets/portal.xsl"/>
  56. <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
  57. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  58. <xts:logicsheet path="logicsheets/presentation/dialog/framework.xsl"/>
  59. <xts:logicsheet path="logicsheets/presentation/layout.xsl"/>
  60. <xts:logicsheet path="logicsheets/presentation/dialog/presentation.xsl"/>
  61. <xts:logicsheet path="logicsheets/presentation/controls/framework.xsl"/>
  62. <xts:logicsheet path="logicsheets/presentation/controls/presentation.xsl"/>
  63. <xts:logicsheet path="logicsheets/formlogic.xslt"/>
  64. <xts:logicsheet path="logicsheets/validation.xslt"/>
  65. <xts:logicsheet path="logicsheets/presentation/touch_up.xslt"/>
  66. <xsl:stylesheet version="1.0"
  67. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  68. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  69. xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
  70. xmlns:lyt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/layout/"
  71. xmlns:dp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/presentation/"
  72. xmlns:df="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/framework/"
  73. xmlns:cf="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/framework/"
  74. xmlns:cp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/presentation/"
  75. xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/"
  76. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  77. xmlns:utml="http://developer.cognos.com/schemas/xts/logicsheet/xslt/formlogic/"
  78. exclude-result-prefixes="xsl cm pf lyt dp df cf cp utml xts xtsext">
  79. <pf:variables/>
  80. <xsl:template match="/root">
  81. <pf:dojo>
  82. <require>com.ibm.cognos.ps.xts.settingsJmxProxyHostDispatchers</require>
  83. </pf:dojo>
  84. <script language="javascript">
  85. dojo.addOnLoad(function(){
  86. document.pform.ps_nav_op.value = 'drop';
  87. document.pform.m.value = "portal/properties_settings.xts";
  88. document.pform.controller_state.value='';
  89. document.pform.submit();
  90. });
  91. </script>
  92. <utml:form name="pform" method="post" action="{$gateway}">
  93. </utml:form>
  94. </xsl:template>
  95. </xsl:stylesheet>
  96. </xts:block>
  97. <!--
  98. ===============================================================================================
  99. restoreEntries - restore the jmxProxyHostDispatchers entries from env
  100. ===============================================================================================
  101. -->
  102. <xts:block id="restoreEntries" processor="XSLT" type="exec" mode="interpret"
  103. path="transforms/portal/jmxProxyHostDispatchers/restoreEntries.xslt"
  104. condition=".[not(/root/actionQueryCM)]"
  105. dependency="actionController" mandatory="false"/>
  106. <!--
  107. ===============================================================================================
  108. getContent - get the initial data from Content Manager
  109. ===============================================================================================
  110. -->
  111. <xts:block id="getContent" processor="XSLT" type="exec" mode="interpret" dependency="actionController" condition=".[/root/actionQueryCM]" mandatory="false">
  112. <xts:logicsheet path="logicsheets/cm-logic.xsl"/>
  113. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  114. <xsl:stylesheet version="1.0"
  115. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  116. xmlns:cml="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/cml/1/"
  117. xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/"
  118. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  119. exclude-result-prefixes="xts xsl send cml cm">
  120. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  121. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  122. <xsl:template match="/">
  123. <xts:sequence>
  124. <xts:append>
  125. <xts:transform src="transforms/CM/post-process.xslt" processor="XSLT">
  126. <send:request provider="cm" testBlock="test">
  127. <xts:transform src="transforms/CM/pre-process.xslt" processor="XSLT">
  128. <cm:query>
  129. <cm:search>
  130. <xsl:value-of select="/root/env/param[@name='m_obj']"/>
  131. </cm:search>
  132. <cm:properties>
  133. <cm:property name="defaultName"/>
  134. <cm:property name="permissions"/>
  135. <cm:property name="parent"/>
  136. <cm:property name="jmxProxyHostDispatchers"/>
  137. </cm:properties>
  138. </cm:query>
  139. </xts:transform>
  140. </send:request>
  141. </xts:transform>
  142. </xts:append>
  143. </xts:sequence>
  144. </xsl:template>
  145. </xsl:stylesheet>
  146. </xts:block>
  147. <!--
  148. ===============================================================================================
  149. getDetails - get details from participating Dispatcher object(s)
  150. ===============================================================================================
  151. -->
  152. <xts:block id="getDetails" processor="XSLT" type="exec" mode="interpret" dependency="getContent" condition=".[/root/actionQueryCM]" mandatory="false">
  153. <xts:logicsheet path="logicsheets/cm-logic.xsl"/>
  154. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  155. <xsl:stylesheet version="1.0"
  156. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  157. xmlns:cml="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/cml/1/"
  158. xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/"
  159. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  160. exclude-result-prefixes="xts xsl send cml cm">
  161. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  162. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  163. <xsl:template match="/">
  164. <xts:sequence>
  165. <xts:delete select="/root/env/param[@name='has_write_permission']"/>
  166. <xts:append select="/root/env">
  167. <param name="has_write_permission">
  168. <xsl:choose>
  169. <xsl:when test="contains(concat(' ', /root/cm:queryResponse/*/cm:permissions, ' '), ' write ')">
  170. <xsl:value-of select="'true'"/>
  171. </xsl:when>
  172. <xsl:otherwise>
  173. <xsl:value-of select="'false'"/>
  174. </xsl:otherwise>
  175. </xsl:choose>
  176. </param>
  177. </xts:append>
  178. </xts:sequence>
  179. <xts:sequence>
  180. <xsl:variable name="jmxProxyHostDispatchers" select="/root/cm:queryResponse/*/cm:jmxProxyHostDispatchers/*/*"/>
  181. <xsl:if test="$jmxProxyHostDispatchers != ''">
  182. <xsl:variable name="dispStoreIDSearch">
  183. <xsl:for-each select="$jmxProxyHostDispatchers[local-name()='storeID']">
  184. <xsl:text>storeID('</xsl:text>
  185. <xsl:value-of select="text()"/>
  186. <xsl:text>')</xsl:text>
  187. <!-- xsl:value-of select="concat('storeID&#40;&apos;',text(),'&apos;&#41;')"/-->
  188. <xsl:if test="not(position()=last())">
  189. <xsl:text> | </xsl:text>
  190. </xsl:if>
  191. </xsl:for-each>
  192. </xsl:variable>
  193. <xts:append>
  194. <xts:transform src="transforms/portal/jmxProxyHostDispatchers/buildFormatedEntries.xslt" processor="XSLT">
  195. <jmxProxyHostDispatchers>
  196. <xts:transform src="transforms/CM/post-process.xslt" processor="XSLT">
  197. <send:request provider="cm" testBlock="test">
  198. <xts:transform src="transforms/CM/pre-process.xslt" processor="XSLT">
  199. <cm:query>
  200. <cm:requests>
  201. <cm:query>
  202. <cm:search><xsl:value-of select="$dispStoreIDSearch"/></cm:search>
  203. <cm:properties>
  204. <cm:property name="defaultName"/>
  205. <cm:property name="searchPath"/>
  206. <cm:property name="hidden"/>
  207. <cm:property name="storeID"/>
  208. </cm:properties>
  209. </cm:query>
  210. </cm:requests>
  211. </cm:query>
  212. </xts:transform>
  213. </send:request>
  214. </xts:transform>
  215. </jmxProxyHostDispatchers>
  216. </xts:transform>
  217. </xts:append>
  218. </xsl:if>
  219. </xts:sequence>
  220. </xsl:template>
  221. </xsl:stylesheet>
  222. </xts:block>
  223. <!--
  224. ===============================================================================================
  225. addEntriesDialog - Calls the addEntries morphlet
  226. ===============================================================================================
  227. -->
  228. <xts:block id="addEntriesDialog" processor="XSLT" type="exec" nodelist="env,requestParams" dependency="restoreEntries" condition=".[/root/actionAddEntries]" mandatory="false">
  229. <xts:logicsheet path="logicsheets/portal.xsl"/>
  230. <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
  231. <xsl:stylesheet version="1.0"
  232. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  233. xmlns:dlgctrl="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/controller-templates/"
  234. xmlns:req-params="http://developer.cognos.com/schemas/request/params"
  235. exclude-result-prefixes="xsl dlgctrl req-params">
  236. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  237. <xsl:key name="request-param" match="/root/*[local-name()='requestParams']/*[local-name()='param']" use="@name"/>
  238. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  239. <xsl:template match="/">
  240. <xts:sequence>
  241. <dlgctrl:XTS2Request>
  242. <dlgctrl:target>/portal/addEntries/add_entries.xts</dlgctrl:target>
  243. <req-params:param name="defaultTarget">/portal/settings_jmxProxyHostDispatchers.xts</req-params:param>
  244. <req-params:param name="titlePostfix"><xsl:value-of select="key('env-param', 'm_name')"/></req-params:param>
  245. <req-params:param name="defaultSearchPath">/configuration</req-params:param>
  246. <req-params:param name="addEntriesUI">jmxProxyHostDispatchers</req-params:param>
  247. <req-params:param name="allowDuplicates">false</req-params:param>
  248. </dlgctrl:XTS2Request>
  249. </xts:sequence>
  250. </xsl:template>
  251. </xsl:stylesheet>
  252. </xts:block>
  253. <!--
  254. ===============================================================================================
  255. processAddEntriesResponse - process the addEndtries morphlet response
  256. ===============================================================================================
  257. -->
  258. <xts:block id="processAddEntriesResponse"
  259. path="/portal/addEntries/logicsheets/process_added_entries.xslt"
  260. processor="XSLT" dependency="addEntriesDialog"
  261. nodelist="output,env,morphletResponse,credential,cookies" type="exec"
  262. condition=".[/root/actionAddEntries]" mandatory="false">
  263. <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
  264. <xts:logicsheet path="logicsheets/portal.xsl"/>
  265. </xts:block>
  266. <xts:block id="restoreAfterAddEntries" processor="XSLT" type="exec"
  267. path="transforms/portal/jmxProxyHostDispatchers/restoreEntries.xslt"
  268. mode="interpret" dependency="processAddEntriesResponse"
  269. condition=".[/root/actionAddEntries and /root/actionShowContent]" mandatory="false"/>
  270. <!--
  271. ===============================================================================================
  272. mergeEntries - merge the added entries with the existing ones
  273. ===============================================================================================
  274. -->
  275. <xts:block id="mergeEntries" processor="XSLT" type="exec" mode="interpret" dependency="restoreAfterAddEntries" condition=".[/root/actionAddEntries and /root/actionShowContent]" mandatory="false">
  276. <xsl:stylesheet version="1.0"
  277. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  278. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  279. exclude-result-prefixes="xts xsl cm">
  280. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  281. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  282. <xsl:template match="/">
  283. <xts:sequence>
  284. <xsl:if test="not(/root/jmxProxyHostDispatchers)">
  285. <xts:append select="/root">
  286. <jmxProxyHostDispatchers/>
  287. </xts:append>
  288. </xsl:if>
  289. <xsl:variable name="currentEntries" select="/root/*[local-name()='jmxProxyHostDispatchers']"/>
  290. <xsl:for-each select="/root/*[local-name()='newEntries']/*[local-name()='dispatcher']">
  291. <xsl:choose>
  292. <xsl:when test="$currentEntries//*[local-name()='searchPath']=./*[local-name()='searchPath']">
  293. <xsl:if test="name(/root/duplicateEntry) = ''">
  294. <xts:append select="/root">
  295. <duplicateEntry/>
  296. </xts:append>
  297. </xsl:if>
  298. </xsl:when>
  299. <xsl:otherwise>
  300. <xts:append select="/root/jmxProxyHostDispatchers">
  301. <xsl:element name="dispatcher" namespace="http://developer.cognos.com/schemas/xts-cm/1/">
  302. <xsl:copy-of select="*[local-name()='defaultName']"/>
  303. <xsl:copy-of select="*[local-name()='hidden']"/>
  304. <xsl:copy-of select="*[local-name()='objectClass']"/>
  305. <xsl:copy-of select="*[local-name()='searchPath']"/>
  306. </xsl:element>
  307. </xts:append>
  308. </xsl:otherwise>
  309. </xsl:choose>
  310. </xsl:for-each>
  311. </xts:sequence>
  312. </xsl:template>
  313. </xsl:stylesheet>
  314. </xts:block>
  315. <!--
  316. ===============================================================================================
  317. deleteEntries - delete the selected entries from jmxProxyHostDispatchers section
  318. ===============================================================================================
  319. -->
  320. <xts:block id="deleteEntries" processor="XSLT" type="exec" mode="interpret" dependency="restoreEntries" condition=".[/root/actionDeleteEntries and /root/actionShowContent]" mandatory="false">
  321. <xsl:stylesheet version="1.0"
  322. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  323. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  324. exclude-result-prefixes="xts xsl cm">
  325. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  326. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  327. <xsl:template match="/">
  328. <xts:sequence>
  329. <xsl:if test="/root/env/param[@name='jmx_properties_checkbox']">
  330. <xsl:variable name="positionXPath">
  331. <xsl:for-each select="/root/env/param[@name='jmx_properties_checkbox']">
  332. <xsl:if test="position() != 1">
  333. <xsl:text> or </xsl:text>
  334. </xsl:if>
  335. <xsl:text>position()=</xsl:text><xsl:value-of select="text()"/>
  336. </xsl:for-each>
  337. </xsl:variable>
  338. <xts:delete select="/root/jmxProxyHostDispatchers//*[local-name()='dispatcher' and {$positionXPath}]"/>
  339. </xsl:if>
  340. <!-- clean up the parameters in env -->
  341. <xts:delete select="/root/env/param[starts-with(@name,'jmx_properties_')]"/>
  342. <xts:delete select="/root/env/param[@name='controller_state']"/>
  343. </xts:sequence>
  344. </xsl:template>
  345. </xsl:stylesheet>
  346. </xts:block>
  347. <!--
  348. ===============================================================================================
  349. saveEntries - save the jmxProxyHostDispatchers entries to env
  350. ===============================================================================================
  351. -->
  352. <xts:block id="saveEntries" processor="XSLT" type="exec" mode="interpret" dependency="restoreEntries deleteEntries mergeEntries getDetails" condition=".[/root/actionShowContent or /root/saveAndClose]" mandatory="false">
  353. <xts:logicsheet path="logicsheets/portal.xsl"/>
  354. <xsl:stylesheet version="1.0"
  355. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  356. xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
  357. xmlns:xts="http://developer.cognos.com/schemas/xts/"
  358. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  359. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  360. exclude-result-prefixes="xts xsl pf xtsext cm">
  361. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  362. <pf:variables/>
  363. <xsl:template match="/">
  364. <xts:sequence>
  365. <xsl:if test="/root/env/param[@name='jmxProxyHostDispatchers']">
  366. <xts:delete select="/root/env/param[@name='jmxProxyHostDispatchers']"/>
  367. </xsl:if>
  368. <xts:append select="/root/env">
  369. <xts:transform src="portal/controls/create_web64_param.xslt" processor="XSLT">
  370. <param name="jmxProxyHostDispatchers">
  371. <passport><xsl:value-of select="$passport"/></passport>
  372. <markup>
  373. <xts:transform name="XMLEncode">
  374. <xts:queryNode select="/root/jmxProxyHostDispatchers"/>
  375. </xts:transform>
  376. </markup>
  377. </param>
  378. </xts:transform>
  379. </xts:append>
  380. <!-- clean up the parameters in env -->
  381. <xts:delete select="/root/env/param[starts-with(@name,'jmx_properties_')]"/>
  382. </xts:sequence>
  383. </xsl:template>
  384. </xsl:stylesheet>
  385. </xts:block>
  386. <xts:block id="formlogic_init" type="exec" mode="interpret" processor="XSLT" path="/logicsheets/formlogic_init.xslt" nodelist="env,credential,system,http" dependency="saveEntries" condition=".[/root/actionShowContent]" mandatory="false"/>
  387. <!--
  388. ===============================================================================================
  389. format - render the page
  390. ===============================================================================================
  391. -->
  392. <xts:block id="format" mode="output" processor="XSLT" type="exec" dependency="formlogic_init" mimeType="text/html" condition=".[/root/actionShowContent]" mandatory="false">
  393. <xts:logicsheet path="logicsheets/portal.xsl"/>
  394. <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
  395. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  396. <xts:logicsheet path="logicsheets/presentation/dialog/framework.xsl"/>
  397. <xts:logicsheet path="logicsheets/presentation/layout.xsl"/>
  398. <xts:logicsheet path="logicsheets/presentation/dialog/presentation.xsl"/>
  399. <xts:logicsheet path="logicsheets/presentation/controls/framework.xsl"/>
  400. <xts:logicsheet path="logicsheets/presentation/controls/presentation.xsl"/>
  401. <xts:logicsheet path="logicsheets/formlogic.xslt"/>
  402. <xts:logicsheet path="logicsheets/validation.xslt"/>
  403. <xts:logicsheet path="logicsheets/presentation/touch_up.xslt"/>
  404. <xsl:stylesheet version="1.0"
  405. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  406. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  407. xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
  408. xmlns:lyt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/layout/"
  409. xmlns:dp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/presentation/"
  410. xmlns:df="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/framework/"
  411. xmlns:cf="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/framework/"
  412. xmlns:cp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/presentation/"
  413. xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/"
  414. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  415. xmlns:utml="http://developer.cognos.com/schemas/xts/logicsheet/xslt/formlogic/"
  416. exclude-result-prefixes="xsl cm pf lyt dp df cf cp utml xts xtsext">
  417. <xsl:output method="html" version="1.0" encoding="UTF-8" indent="no" omit-xml-declaration="yes"/>
  418. <!-- Global variables ======================== -->
  419. <pf:variables/>
  420. <xsl:variable name="browserTitle">
  421. <xts:string id="IDS_JMX_TITLE">
  422. <xts:param name="objectName">
  423. <span lang="{$contentLocale}"><xsl:value-of select="key('env-param', 'm_name')"/></span>
  424. </xts:param>
  425. </xts:string>
  426. </xsl:variable>
  427. <!-- start the output -->
  428. <xsl:template match="/root">
  429. <xsl:variable name="isReadOnlyMode" select="key('env-param', 'controller_state') = 'readonly' or key('env-param', 'has_write_permission') = 'false'"/>
  430. <pf:dojo>
  431. <require>com.ibm.cognos.ps.xts.settingsJmxProxyHostDispatchers</require>
  432. </pf:dojo>
  433. <xsl:text disable-output-escaping='yes'>&lt;!DOCTYPE html></xsl:text><dp:page longTitle="$browserTitle">
  434. <dp:meta>
  435. <pf:meta/>
  436. <!-- Standard meta tags -->
  437. </dp:meta>
  438. <dp:script>
  439. <pf:help context="HID_PROPERTIES"/>
  440. <!-- Help system -->
  441. <!-- Define selectall and deselectall functions.-->
  442. <dt:selectDeselectAll/>
  443. <script language="javascript">
  444. var settingsJmxProxyHostDispatchers = null;
  445. dojo.addOnLoad(function(){
  446. jmxProxyHostDispContext = {
  447. env: window,
  448. messages: {
  449. IDS_JMX_DUPLICATE_ENTRY: '<xts:string id="IDS_JMX_DUPLICATE_ENTRY" encode="javascript"/>',
  450. IDS_PROP_CANCEL_CONFIRM: '<xts:string id="IDS_PROP_CANCEL_CONFIRM" encode="javascript"/>',
  451. IDS_ERR_NO_SELECTION: '<xts:string id="IDS_ERR_NO_SELECTION" encode="javascript"/>'
  452. },
  453. chkBoxes: document.getElementsByName("jmx_properties_checkbox"),
  454. hasDuplicatedEntry: '<xsl:value-of select="name(/root/duplicateEntry)"/>',
  455. isDirty: '<xsl:value-of select="name(/root/isDirty)"/>',
  456. hasBeenReorderedSinceSave: false,
  457. listViewSeparator: '<xsl:value-of select="key('session-param', 'listViewSeparator')"/>'
  458. };
  459. settingsJmxProxyHostDispatchers = new com.ibm.cognos.ps.xts.settingsJmxProxyHostDispatchers(document.pform,jmxProxyHostDispContext);
  460. });
  461. </script>
  462. </dp:script>
  463. <utml:form name="pform" method="post" action="{$gateway}">
  464. <utml:read-only>
  465. <xsl:choose>
  466. <xsl:when test="$isReadOnlyMode">true</xsl:when>
  467. <xsl:otherwise>false</xsl:otherwise>
  468. </xsl:choose>
  469. </utml:read-only>
  470. <utml:input type="hidden" name="ps_nav_op" value="" utml:update="false"/>
  471. <utml:input type="hidden" name="controller_state" value="" utml:update="false"/>
  472. <!-- header -->
  473. <!-- dialog header -->
  474. <dp:header>
  475. <!-- header titles-->
  476. <dp:title showName="false">
  477. <xsl:copy-of select="$browserTitle"/>
  478. </dp:title>
  479. <dp:description>
  480. <xts:string id="IDS_JMX_INTRO"/>
  481. </dp:description>
  482. </dp:header>
  483. <cp:table name="jmxProxyHostDispatchers" showEmptyMsg="true" iterate="/root/jmxProxyHostDispatchers/*" width="100%">
  484. <!-- possible actions -->
  485. <cp:action>
  486. <xsl:if test="not($isReadOnlyMode)">
  487. <utml:a utml:op="maintain">
  488. <utml:href>javascript:settingsJmxProxyHostDispatchers.moveCheckedRowsUp();</utml:href>
  489. <xts:string id="IDS_SORT_UP"/>
  490. </utml:a>
  491. </xsl:if>
  492. </cp:action>
  493. <cp:action>
  494. <xsl:if test="not($isReadOnlyMode)">
  495. <utml:a utml:op="maintain">
  496. <utml:href>javascript:settingsJmxProxyHostDispatchers.moveCheckedRowsDown();</utml:href>
  497. <xts:string id="IDS_SORT_DOWN"/>
  498. </utml:a>
  499. </xsl:if>
  500. </cp:action>
  501. <cp:action>
  502. <xsl:if test="not($isReadOnlyMode)">
  503. <utml:a utml:op="maintain">
  504. <utml:href>javascript:settingsJmxProxyHostDispatchers.moveCheckedRowsTop();</utml:href>
  505. <xts:string id="IDS_SORT_TOP"/>
  506. </utml:a>
  507. </xsl:if>
  508. </cp:action>
  509. <cp:action>
  510. <xsl:if test="not($isReadOnlyMode)">
  511. <utml:a utml:op="maintain">
  512. <utml:href>javascript:settingsJmxProxyHostDispatchers.moveCheckedRowsBottom();</utml:href>
  513. <xsl:text/><xts:string id="IDS_SORT_BOTTOM"/><xsl:text/>
  514. </utml:a>
  515. </xsl:if>
  516. </cp:action>
  517. <cp:action>
  518. <xsl:if test="not($isReadOnlyMode)">
  519. <utml:a utml:op="maintain">
  520. <utml:href>document.pform.m.value='<xsl:value-of select="$app"/>/settings_jmxProxyHostDispatchers.xts';
  521. document.pform.controller_state.value = 'addEntries|navigate';</utml:href>
  522. <xsl:text/><xts:string id="IDS_JMX_ADD"/><xsl:text/>
  523. </utml:a>
  524. </xsl:if>
  525. </cp:action>
  526. <cp:action>
  527. <xsl:if test="not($isReadOnlyMode)">
  528. <utml:a utml:op="maintain">
  529. <utml:href>if (!settingsJmxProxyHostDispatchers.setUpDeleteEntries()){return;}</utml:href>
  530. <xsl:text/><xts:string id="IDS_JMX_DELETE"/><xsl:text/>
  531. </utml:a>
  532. </xsl:if>
  533. </cp:action>
  534. <!-- table headers -->
  535. <cp:tableHeader>
  536. <!-- checkbox -->
  537. <cp:columnHeader toggleName="jmx_properties_checkbox" utml="utml" noLabel="true"/>
  538. <cp:columnHeader />
  539. <cp:columnHeader width="99%">
  540. <xts:string id="IDS_JMX_DISPATCHER"/>
  541. </cp:columnHeader>
  542. </cp:tableHeader>
  543. <!-- table cantents -->
  544. <cp:tableContent>
  545. <!-- checkbox -->
  546. <cp:columnContent valign="top">
  547. <xsl:if test="not($isReadOnlyMode)">
  548. <input type="checkbox" name="jmx_properties_checkbox" value="{position()}">
  549. <xsl:attribute name="aria-label"><xts:string id="IDS_SELECTION_FOR_PAGER_ITEM" encode="html"><xts:param name="pagerItemName"><xsl:value-of select="position()"/></xts:param></xts:string></xsl:attribute>
  550. </input>
  551. </xsl:if>
  552. </cp:columnContent>
  553. <cp:columnContent>
  554. <xsl:call-template name="gen-icon">
  555. <xsl:with-param name="class" select="cm:objectClass"/>
  556. <xsl:with-param name="hiddenObject" select="cm:hidden"/>
  557. </xsl:call-template>
  558. </cp:columnContent>
  559. <cp:columnContent id="jmx_{position()}">
  560. <xsl:value-of select="cm:defaultName"/>
  561. <input type="hidden" name="jmx_properties_idx" value="{position()}"/>
  562. </cp:columnContent>
  563. </cp:tableContent>
  564. </cp:table>
  565. <dp:footer>
  566. <xsl:choose>
  567. <xsl:when test="not($isReadOnlyMode)">
  568. <df:button df:id="IDS_OK" df:style="href" df:href="javascript:settingsJmxProxyHostDispatchers.save();"/>
  569. <df:button df:id="IDS_CANCEL" utml:validate="true" df:style="stack-down"/>
  570. </xsl:when>
  571. <xsl:otherwise>
  572. <df:button df:id="IDS_CLOSE" df:style="href" df:href="#" onclick="{key('env-param', 'backURL')}"/>
  573. </xsl:otherwise>
  574. </xsl:choose>
  575. </dp:footer>
  576. </utml:form>
  577. </dp:page>
  578. </xsl:template>
  579. <!-- Insert common templates -->
  580. <pf:gen-icon/>
  581. </xsl:stylesheet>
  582. </xts:block>
  583. <!-- Debug -->
  584. <xts:block id="debug" type="exec" dependency="format" mode="output" condition=".[ /root/session/param[@name='debug'] = '1' ]" processor="XSLT" mandatory="false" mimeType="text/html">
  585. <xts:logicsheet path="logicsheets/debuglogic.xslt"/>
  586. <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">
  587. <xsl:output method="html" version="1.0" encoding="UTF-8" indent="no" omit-xml-declaration="yes"/>
  588. <dbg:templates/>
  589. <xsl:template match="/">
  590. <dbg:dumpxml select="/root"/>
  591. </xsl:template>
  592. </xsl:stylesheet>
  593. </xts:block>
  594. </xts:morphlet>