websrv-typemap.xsl revision db3dbd0ed7eb69f804a8921fa23a1267ea01f46e
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<?xml version="1.0"?>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!--
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync websrv-typemap.xsl:
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync XSLT stylesheet that generates a typemap file from
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync VirtualBox.xidl for use with the gSOAP compilers.
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync Copyright (C) 2006-2007 Sun Microsystems, Inc.
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
10cdf5733351fdcd857d439ca32189e812f18682vboxsync Sun Microsystems, Inc. confidential
10cdf5733351fdcd857d439ca32189e812f18682vboxsync All rights reserved
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync-->
e64031e20c39650a7bc902a3e1aba613b9415deevboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<xsl:stylesheet
92a27575521748a392dcd1b996fce55b87411a00vboxsync version="1.0"
92a27575521748a392dcd1b996fce55b87411a00vboxsync xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
92a27575521748a392dcd1b996fce55b87411a00vboxsync xmlns:xsd="http://www.w3.org/2001/XMLSchema">
92a27575521748a392dcd1b996fce55b87411a00vboxsync
92a27575521748a392dcd1b996fce55b87411a00vboxsync <xsl:output method="text"/>
92a27575521748a392dcd1b996fce55b87411a00vboxsync
92a27575521748a392dcd1b996fce55b87411a00vboxsync <xsl:strip-space elements="*"/>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- - - - - - - - - - - - - - - - - - - - - - -
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync global XSLT variables
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync - - - - - - - - - - - - - - - - - - - - - - -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<xsl:variable name="G_xsltFilename" select="'websrv-typemap.xsl'" />
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<xsl:include href="websrv-shared.inc.xsl" />
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- - - - - - - - - - - - - - - - - - - - - - -
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync root match
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync - - - - - - - - - - - - - - - - - - - - - - -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<xsl:template match="/idl">
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:text><![CDATA[
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync# DO NOT EDIT! This is a generated file.
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync# Generated from: src/VBox/Main/idl/VirtualBox.xidl (VirtualBox's interface definitions in XML)
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync# Generator: src/VBox/Main/webservice/websrv-typemap.xsl
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync# forces typedefs:
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsyncxsd__int = | long
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsyncxsd__unsignedInt = | unsigned long
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync# xsd__short =| int16_t
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync# xsd__unsignedShort =| uint16_t
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync# xsd__int =| int32_t
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync# xsd__unsignedInt =| uint32_t
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync# xsd__long =| int64_t
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync# xsd__unsignedLong =| uint64_t
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync# Main namespace (which is mapped to vbox__ prefixes):
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync]]></xsl:text>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:value-of select="concat('vbox = &quot;', $G_targetNamespace, '&quot;')" />
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:call-template name="emitNewline" />
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:call-template name="emitNewline" />
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:text># Namespaces for the interfaces in xidl that need to be mapped according to their wsmap attribs:</xsl:text>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:call-template name="emitNewline" />
c9dbeac49601b9e10f0941b1c8e4f97853d4fab5vboxsync <xsl:apply-templates />
c9dbeac49601b9e10f0941b1c8e4f97853d4fab5vboxsync</xsl:template>
c9dbeac49601b9e10f0941b1c8e4f97853d4fab5vboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- - - - - - - - - - - - - - - - - - - - - - -
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync if
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync - - - - - - - - - - - - - - - - - - - - - - -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
23179f1443b03947d85eccc81cbc6b5153a4abf3vboxsync<!--
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync * ignore all |if|s except those for WSDL target
c9dbeac49601b9e10f0941b1c8e4f97853d4fab5vboxsync-->
c9dbeac49601b9e10f0941b1c8e4f97853d4fab5vboxsync<xsl:template match="if">
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:if test="@target='wsdl'">
fadf3b452e8a0c58afb43fd56f445fa8583d9d0cvboxsync <xsl:apply-templates/>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync </xsl:if>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync</xsl:template>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- - - - - - - - - - - - - - - - - - - - - - -
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync cpp
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync - - - - - - - - - - - - - - - - - - - - - - -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<xsl:template match="cpp">
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- ignore this -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync</xsl:template>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- - - - - - - - - - - - - - - - - - - - - - -
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync library
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync - - - - - - - - - - - - - - - - - - - - - - -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<xsl:template match="library">
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:apply-templates />
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync</xsl:template>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- - - - - - - - - - - - - - - - - - - - - - -
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync class
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync - - - - - - - - - - - - - - - - - - - - - - -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<xsl:template match="module/class">
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- TODO swallow for now -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync</xsl:template>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- - - - - - - - - - - - - - - - - - - - - - -
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync enum
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync - - - - - - - - - - - - - - - - - - - - - - -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<xsl:template match="enum">
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync</xsl:template>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- - - - - - - - - - - - - - - - - - - - - - -
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync const
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync - - - - - - - - - - - - - - - - - - - - - - -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!--
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<xsl:template match="const">
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:apply-templates />
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync</xsl:template>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync-->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- - - - - - - - - - - - - - - - - - - - - - -
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync desc
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync - - - - - - - - - - - - - - - - - - - - - - -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<xsl:template match="desc">
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- TODO swallow for now -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync</xsl:template>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- - - - - - - - - - - - - - - - - - - - - - -
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync note
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync - - - - - - - - - - - - - - - - - - - - - - -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<xsl:template match="note">
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<!-- TODO -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:apply-templates />
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync</xsl:template>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync<xsl:template match="interface | collection">
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <!-- remember the interface name in local variables -->
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:variable name="ifname"><xsl:value-of select="@name" /></xsl:variable>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:variable name="wsmap"><xsl:value-of select="@wsmap" /></xsl:variable>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:choose>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:when test="$wsmap='struct'" />
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:when test="$wsmap='suppress'" />
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:otherwise>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:value-of select="concat($ifname, ' = ', $G_targetNamespace, $G_targetNamespaceSeparator, $ifname, $G_bindingSuffix)" />
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync <xsl:call-template name="emitNewline" />
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync </xsl:otherwise>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync </xsl:choose>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync</xsl:template>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync</xsl:stylesheet>
db3dbd0ed7eb69f804a8921fa23a1267ea01f46evboxsync