postprocess.xsl 3.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  3. xmlns:xs="http://www.w3.org/2001/XMLSchema"
  4. xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
  5. exclude-result-prefixes="xs"
  6. version="2.0">
  7. <xsl:output indent="yes"/>
  8. <xsl:strip-space elements="*"/>
  9. <xsl:param name="temp" required="yes"/>
  10. <xsl:param name="uuid" required="yes"/>
  11. <xsl:param name="postprocess_modules.xml" required="yes"/>
  12. <xsl:param name="basedir" required="yes"/>
  13. <xsl:template mode="system_cache__appinfo:preprocess" match="preprocess_dita">
  14. <project basedir="{$temp}" name="project_for_{local-name()}" default="default">
  15. <property name="uuid" value="{$uuid}"/>
  16. <property name="temp" value="{$temp}"/>
  17. <target name="default">
  18. <xsl:apply-templates mode="system_cache__appinfo:preprocess"/>
  19. </target>
  20. </project>
  21. </xsl:template>
  22. <xsl:template mode="system_cache__appinfo:postprocess" match="postprocess_dita">
  23. <project basedir="{$temp}" name="project_for_{local-name()}" default="default">
  24. <property name="uuid" value="{$uuid}"/>
  25. <property name="temp" value="{$temp}"/>
  26. <target name="default">
  27. <xsl:apply-templates mode="system_cache__appinfo:postprocess"/>
  28. </target>
  29. </project>
  30. </xsl:template>
  31. <xsl:template mode="system_cache__appinfo:postprocess" match="base64_to_image">
  32. <xsl:choose>
  33. <xsl:when test="@srcfile and @dstfile">
  34. <exec executable="base64">
  35. <arg line="-i {@srcfile}"/>
  36. <arg line="-o {@dstfile}"/>
  37. <arg line="-D"/>
  38. </exec>
  39. </xsl:when>
  40. <xsl:otherwise>
  41. <xsl:message terminate="yes">#29 Not set @srcfile or @dstfile</xsl:message>
  42. </xsl:otherwise>
  43. </xsl:choose>
  44. </xsl:template>
  45. <xsl:template mode="system_cache__appinfo:preprocess" match="gml_to_image">
  46. <xsl:choose>
  47. <xsl:when test="@srcfile and @dstfile and @fileindex">
  48. <echo>TODO convert gml 2 png for <xsl:value-of select="@srcfile"/> to <xsl:value-of select="@dstfile"/> , @fileindex=<xsl:value-of select="@fileindex"/>; - tymczasowy sposob mapowania do konfigu</echo>
  49. <xsl:variable name="current_node" select="."/>
  50. <xsl:variable name="postprocess_modules" select="doc($postprocess_modules.xml)"/>
  51. <xsl:for-each select="$postprocess_modules/postprocess_modules/node()[name()= current()/name()]">
  52. <xsl:for-each select="*">
  53. <xsl:element name="{name()}">
  54. <xsl:copy-of select="@*"/>
  55. <property name="basedir" value="{$basedir}"/>
  56. <xsl:for-each select="property">
  57. <xsl:element name="{name()}">
  58. <xsl:attribute name="name" select="@name"/>
  59. <xsl:attribute name="value" select="$current_node/@*[name()= current()/@name]"/>
  60. <!--<xsl:copy-of select="@*"/>-->
  61. </xsl:element>
  62. </xsl:for-each>
  63. </xsl:element>
  64. </xsl:for-each>
  65. </xsl:for-each>
  66. </xsl:when>
  67. <xsl:otherwise>
  68. <xsl:message terminate="yes">#29 Not set @srcfile or @dstfile</xsl:message>
  69. </xsl:otherwise>
  70. </xsl:choose>
  71. </xsl:template>
  72. </xsl:stylesheet>