[Telepathy-commits] [telepathy-gabble/master] Allow undefined (external) interfaces in extensions
Simon McVittie
simon.mcvittie at collabora.co.uk
Tue Aug 19 10:53:56 PDT 2008
20080722161257-53eee-92d43a0b50bcd290b7e1a735d77c694f85ac2349.gz
---
extensions/Makefile.am | 1 +
tools/doc-generator.xsl | 41 +++++++++++++++++++++++++++--------------
2 files changed, 28 insertions(+), 14 deletions(-)
diff --git a/extensions/Makefile.am b/extensions/Makefile.am
index bd11734..c3047f0 100644
--- a/extensions/Makefile.am
+++ b/extensions/Makefile.am
@@ -46,6 +46,7 @@ _gen/all.xml: all.xml $(wildcard *.xml) Makefile.am
extensions.html: _gen/all.xml $(tools_dir)/doc-generator.xsl Makefile.am
$(XSLTPROC) $(XSLTPROCFLAGS) \
+ --param "allow-undefined-interfaces" "true()" \
$(tools_dir)/doc-generator.xsl \
$< > $@
diff --git a/tools/doc-generator.xsl b/tools/doc-generator.xsl
index 3eaf0bc..76fc969 100644
--- a/tools/doc-generator.xsl
+++ b/tools/doc-generator.xsl
@@ -27,6 +27,8 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
don't work ideally in the presence of two things that want to use the
absence of a prefix, sadly. -->
+ <xsl:param name="allow-undefined-interfaces" select="false()"/>
+
<xsl:template match="html:* | @*" mode="html">
<xsl:copy>
<xsl:apply-templates mode="html"/>
@@ -52,27 +54,38 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
</xsl:variable>
<xsl:choose>
- <xsl:when test="//interface[@name=$name]"/>
- <xsl:when test="//interface/method[concat(../@name, '.', @name)=$name]"/>
- <xsl:when test="//interface/signal[concat(../@name, '.', @name)=$name]"/>
- <xsl:when test="//interface/property[concat(../@name, '.', @name)=$name]"/>
- <xsl:when test="//interface[@name=concat($name, '.DRAFT')]"/>
- <xsl:when test="//interface/method[concat(../@name, '.', @name)=concat($name, '.DRAFT')]"/>
- <xsl:when test="//interface/signal[concat(../@name, '.', @name)=concat($name, '.DRAFT')]"/>
- <xsl:when test="//interface/property[concat(../@name, '.', @name)=concat($name, '.DRAFT')]"/>
+ <xsl:when test="//interface[@name=$name]
+ or //interface/method[concat(../@name, '.', @name)=$name]
+ or //interface/signal[concat(../@name, '.', @name)=$name]
+ or //interface/property[concat(../@name, '.', @name)=$name]
+ or //interface[@name=concat($name, '.DRAFT')]
+ or //interface/method[
+ concat(../@name, '.', @name)=concat($name, '.DRAFT')]
+ or //interface/signal[
+ concat(../@name, '.', @name)=concat($name, '.DRAFT')]
+ or //interface/property[
+ concat(../@name, '.', @name)=concat($name, '.DRAFT')]
+ ">
+ <a xmlns="http://www.w3.org/1999/xhtml" href="#{$name}">
+ <xsl:value-of select="string(.)"/>
+ </a>
+ </xsl:when>
+
+ <xsl:when test="$allow-undefined-interfaces">
+ <span xmlns="http://www.w3.org/1999/xhtml" title="defined elsewhere">
+ <xsl:value-of select="string(.)"/>
+ </span>
+ </xsl:when>
+
<xsl:otherwise>
<xsl:message terminate="yes">
- <xsl:text>ERR: cannot find D-Bus interface, method, signal</xsl:text>
- <xsl:text> or property called '</xsl:text>
+ <xsl:text>ERR: cannot find D-Bus interface, method, </xsl:text>
+ <xsl:text>signal or property called '</xsl:text>
<xsl:value-of select="$name"/>
<xsl:text>' </xsl:text>
</xsl:message>
</xsl:otherwise>
</xsl:choose>
-
- <a xmlns="http://www.w3.org/1999/xhtml" href="#{$name}">
- <xsl:value-of select="string(.)"/>
- </a>
</xsl:template>
<!-- tp:member-ref: reference a property of the current interface -->
--
1.5.6.3
More information about the Telepathy-commits
mailing list