b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:stylesheet version = '1.0'
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync xmlns:vbox="http://www.virtualbox.org/"
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync xmlns:exsl="http://exslt.org/common"
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync extension-element-prefixes="exsl">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<!--
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync genjifaces.xsl:
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync XSLT stylesheet that generates Java XPCOM bridge interface code from VirtualBox.xidl.
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync Copyright (C) 2010-2013 Oracle Corporation
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsync
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsync This file is part of VirtualBox Open Source Edition (OSE), as
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsync available from http://www.virtualbox.org. This file is free software;
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsync you can redistribute it and/or modify it under the terms of the GNU
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsync General Public License (GPL) as published by the Free Software
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsync Foundation, in version 2 as it comes in the "COPYING" file of the
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsync VirtualBox OSE distribution. VirtualBox OSE is distributed in the
a74782eac5771b0de57834e8c8c0247c55e8dd57vboxsync hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync-->
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:output
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync method="text"
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync version="1.0"
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync encoding="utf-8"
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync indent="no"/>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<!-- - - - - - - - - - - - - - - - - - - - - - -
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync global XSLT variables
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync - - - - - - - - - - - - - - - - - - - - - - -->
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:variable name="G_xsltFilename" select="'genjifaces.xsl'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync<!-- - - - - - - - - - - - - - - - - - - - - - -
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync Keys for more efficiently looking up of types.
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync- - - - - - - - - - - - - - - - - - - - - - -->
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync<xsl:key name="G_keyEnumsByName" match="//enum[@name]" use="@name"/>
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync<xsl:key name="G_keyInterfacesByName" match="//interface[@name]" use="@name"/>
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync<!--
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync xsltprocNewlineOutputHack - emits a single new line.
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync Hack Alert! This template helps xsltproc split up the output text elements
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync and avoid reallocating them into the MB range. Calls to this
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync template is made occationally while generating larger output
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync file. It's not necessary for small stuff like header.
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync The trick we're playing on xsltproc has to do with CDATA
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync and/or the escape setting of the xsl:text element. It forces
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync xsltproc to allocate a new output element, thus preventing
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync things from growing out of proportions and slowing us down.
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync This was successfully employed to reduce a 18+ seconds run to
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync around one second (possibly less due to kmk overhead).
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync -->
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync<xsl:template name="xsltprocNewlineOutputHack">
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync <xsl:text disable-output-escaping="yes"><![CDATA[
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync]]></xsl:text>
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync</xsl:template>
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:template name="uppercase">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="str" select="."/>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="translate($str, 'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:template name="capitalize">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="str" select="."/>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync concat(translate(substring($str,1,1),'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ'),
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync substring($str,2))"/>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:template name="makeGetterName">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="attrname" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="capsname">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="capitalize">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="str" select="$attrname" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:variable>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat('get', $capsname)" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:template name="makeSetterName">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="attrname" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="capsname">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="capitalize">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="str" select="$attrname" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:variable>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat('set', $capsname)" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:template name="fileheader">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="name" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:text>/**
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync * Copyright (C) 2010-2015 Oracle Corporation
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync *
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync * available from http://www.virtualbox.org. This file is free software;
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync * you can redistribute it and/or modify it under the terms of the GNU
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync * General Public License (GPL) as published by the Free Software
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync *
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:text>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat(' * ',$name)"/>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:text>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync *
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync * DO NOT EDIT! This is a generated file.
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync * Generated from: src/VBox/Main/idl/VirtualBox.xidl (VirtualBox's interface definitions in XML)
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync * Generator: src/VBox/src/libs/xpcom18a4/java/tools/genjifaces.xsl
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync */
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:text>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:template name="startFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="file" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat('&#10;// ##### BEGINFILE &quot;', $file, '&quot;&#10;&#10;')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="fileheader">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="name" select="$file" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select=" 'package org.mozilla.interfaces;&#10;&#10;'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:template name="endFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="file" />
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync <xsl:value-of select="concat('&#10;// ##### ENDFILE &quot;', $file, '&quot;&#10;')" />
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync <xsl:call-template name="xsltprocNewlineOutputHack"/>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:template name="emitHandwritten">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="startFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="'nsISupports.java'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:text><![CDATA[
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsyncpublic interface nsISupports
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync{
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public static final String NS_ISUPPORTS_IID =
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync "{00000000-0000-0000-c000-000000000046}";
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public nsISupports queryInterface(String arg1);
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync}
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync]]></xsl:text>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="endFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="'nsISupports.java'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:call-template name="startFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="'nsIComponentManager.java'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:text><![CDATA[
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsyncpublic interface nsIComponentManager extends nsISupports
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync{
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public static final String NS_ICOMPONENTMANAGER_IID =
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync "{a88e5a60-205a-4bb1-94e1-2628daf51eae}";
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public nsISupports getClassObject(String arg1, String arg2);
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public nsISupports getClassObjectByContractID(String arg1, String arg2);
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public nsISupports createInstance(String arg1, nsISupports arg2, String arg3);
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public nsISupports createInstanceByContractID(String arg1, nsISupports arg2, String arg3);
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync}
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync]]></xsl:text>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="endFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="'nsIComponentManager.java'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:call-template name="startFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="'nsIServiceManager.java'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:text><![CDATA[
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsyncpublic interface nsIServiceManager extends nsISupports
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync{
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public static final String NS_ISERVICEMANAGER_IID =
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync "{8bb35ed9-e332-462d-9155-4a002ab5c958}";
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public nsISupports getService(String arg1, String arg2);
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public nsISupports getServiceByContractID(String arg1, String arg2);
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public boolean isServiceInstantiated(String arg1, String arg2);
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public boolean isServiceInstantiatedByContractID(String arg1, String arg2);
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync}
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync]]></xsl:text>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="endFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="'nsIServiceManager.java'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:call-template name="startFile">
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:with-param name="file" select="'nsIExceptionManager.java'" />
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync </xsl:call-template>
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:text><![CDATA[
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsyncpublic interface nsIExceptionManager extends nsISupports
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync{
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync public static final String NS_IEXCEPTIONMANAGER_IID =
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync "{efc9d00b-231c-4feb-852c-ac017266a415}";
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync public nsIException getCurrentException();
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync}
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync]]></xsl:text>
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:call-template name="endFile">
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:with-param name="file" select="'nsISupports.java'" />
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync </xsl:call-template>
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:call-template name="startFile">
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:with-param name="file" select="'nsIExceptionService.java'" />
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync </xsl:call-template>
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:text><![CDATA[
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsyncpublic interface nsIExceptionService extends nsIExceptionManager
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync{
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync public static final String NS_IEXCEPTIONSERVICE_IID =
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync "{35a88f54-f267-4414-92a7-191f6454ab52}";
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync public nsIExceptionManager getCurrentExceptionManager();
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync}
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync]]></xsl:text>
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:call-template name="endFile">
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:with-param name="file" select="'nsISupports.java'" />
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync </xsl:call-template>
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:call-template name="startFile">
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:with-param name="file" select="'nsIException.java'" />
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync </xsl:call-template>
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:text><![CDATA[
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsyncpublic interface nsIException extends nsISupports
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync{
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync public static final String NS_IEXCEPTION_IID =
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync "{f3a8d3b4-c424-4edc-8bf6-8974c983ba78}";
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync // No methods - placeholder
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync}
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync]]></xsl:text>
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:call-template name="endFile">
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:with-param name="file" select="'nsISupports.java'" />
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync </xsl:call-template>
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:call-template name="startFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="'nsIComponentRegistrar.java'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:text><![CDATA[
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsyncpublic interface nsIComponentRegistrar extends nsISupports
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync{
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public static final String NS_ICOMPONENTREGISTRAR_IID =
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync "{2417cbfe-65ad-48a6-b4b6-eb84db174392}";
d331c1c91fc1c4b9f019b9824e7dd9c2cdf804c0vboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync // No methods - placeholder
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync}
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync]]></xsl:text>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="endFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="'nsIComponentRegistrar.java'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:call-template name="startFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="'nsIFile.java'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:text><![CDATA[
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsyncpublic interface nsIFile extends nsISupports
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync{
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public static final String NS_IFILE_IID =
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync "{c8c0a080-0868-11d3-915f-d9d889d48e3c}";
d331c1c91fc1c4b9f019b9824e7dd9c2cdf804c0vboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync // No methods - placeholder
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync}
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync]]></xsl:text>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="endFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="'nsIFile.java'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
ebb33f3aef3b410579a2865109426b798b9d4a9dvboxsync <xsl:call-template name="startFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="'nsILocalFile.java'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:text><![CDATA[
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsyncpublic interface nsILocalFile extends nsIFile
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync{
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync public static final String NS_ILOCALFILE_IID =
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync "{aa610f20-a889-11d3-8c81-000064657374}";
d331c1c91fc1c4b9f019b9824e7dd9c2cdf804c0vboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync // No methods - placeholder
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync}
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync]]></xsl:text>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="endFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="'nsILocalFile.java'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:template name="genEnum">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="enumname" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="filename" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="startFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="$filename" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat('public interface ', $enumname, ' {&#10;&#10;')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="uppername">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="uppercase">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="str" select="$enumname" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:variable>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat(' public static final String ', $uppername, '_IID = &#10;',
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync ' &quot;{',@uuid, '}&quot;;&#10;&#10;')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:for-each select="const">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="enumconst" select="@name" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat(' public static final long ', @name, ' = ', @value, 'L;&#10;&#10;')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:for-each>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'}&#10;&#10;'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="endFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="$filename" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:template name="typeIdl2Back">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="type" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="safearray" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="forceelem" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="needarray" select="($safearray='yes') and not($forceelem='yes')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:choose>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="$type='unsigned long long'">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <!-- stupid, rewrite the bridge -->
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'double'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="$type='long long'">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'long'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="$type='unsigned long'">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'long'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="$type='long'">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'int'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="$type='unsigned short'">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'int'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="$type='short'">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'short'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="$type='octet'">
d331c1c91fc1c4b9f019b9824e7dd9c2cdf804c0vboxsync <xsl:value-of select="'byte'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="$type='boolean'">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'boolean'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="$type='$unknown'">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'nsISupports'"/>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="$type='wstring'">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'String'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="$type='uuid'">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'String'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync <xsl:when test="count(key('G_keyInterfacesByName', $type)) > 0">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="$type" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync <xsl:when test="count(key('G_keyEnumsByName', $type)) > 0">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'long'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:choose>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:if test="$needarray">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'[]'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:if>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:template name="genIface">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="ifname" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:param name="filename" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="startFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="$filename" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
3d6017a0cbbf55b97bc7ca7df1e613b4a1299307vboxsync <xsl:variable name="extendsidl" select="key('G_keyInterfacesByName', $ifname)/@extends" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="extends">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:choose>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="($extendsidl = '$unknown') or ($extendsidl = '$dispatched') or ($extendsidl = '$errorinfo')">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'nsISupports'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:otherwise>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="$extendsidl" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:otherwise>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:choose>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:variable>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat('public interface ', $ifname, ' extends ', $extends, ' {&#10;&#10;')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="uppername">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="uppercase">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="str" select="$ifname" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:variable>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat(' public static final String ', $uppername, '_IID =&#10;',
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync ' &quot;{',@uuid, '}&quot;;&#10;&#10;')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:for-each select="attribute">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="attrname" select="@name" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="attrtype" select="@type" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="gettername">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="makeGetterName">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="attrname" select="$attrname" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:variable>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="backtype">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="typeIdl2Back">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="type" select="$attrtype" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="safearray" select="@safearray" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:variable>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="callparam">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:if test="@safearray='yes'">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat(' long[] ', @name, 'Size')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:if>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:variable>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat(' public ', $backtype, ' ', $gettername, '(',$callparam,');&#10;&#10;')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:if test="not(@readonly='yes')">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="settername">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="makeSetterName">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="attrname" select="$attrname" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:variable>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat(' public void ', $settername, '(', $backtype, ' arg1);&#10;&#10;')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:if>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:for-each>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:for-each select="method">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="methodname" select="@name" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="returnidltype" select="param[@dir='return']/@type" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="returnidlsafearray" select="param[@dir='return']/@safearray" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="returntype">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:choose>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="$returnidltype">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="typeIdl2Back">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="type" select="$returnidltype" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="safearray" select="$returnidlsafearray" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:otherwise>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:text>void</xsl:text>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:otherwise>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:choose>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:variable>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat(' public ', $returntype, ' ', $methodname, '(')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:for-each select="param">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="paramtype">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="typeIdl2Back">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="type" select="@type" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="safearray" select="@safearray" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:variable>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:choose>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="(@safearray='yes') and (@dir='return')">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat('long[] ', @name)" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="(@safearray='yes') and (@dir='out')">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat('long[] ', @name, 'Size, ', $paramtype, '[] ', @name)" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
fd168522254205059178a7e247606c9159ed2ae3vboxsync <xsl:when test="(@safearray='yes') and (@dir='in') and (@type='octet')">
fd168522254205059178a7e247606c9159ed2ae3vboxsync <xsl:value-of select="concat($paramtype, ' ', @name)" />
fd168522254205059178a7e247606c9159ed2ae3vboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="(@safearray='yes') and (@dir='in')">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat('long ', @name, 'Size, ', $paramtype, ' ', @name)" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="@dir='out'">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat($paramtype, '[] ', @name)" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:when test="@dir='in'">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="concat($paramtype, ' ', @name)" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:when>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:choose>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:if test="not(position()=last()) and not(following-sibling::param[1]/@dir='return' and not(following-sibling::param[1]/@safearray='yes'))">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="', '" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:if>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:for-each>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select=" ');&#10;&#10;'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:for-each>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:value-of select="'}&#10;&#10;'" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="endFile">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="file" select="$filename" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync<xsl:template match="/">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <!-- Handwritten files -->
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="emitHandwritten"/>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <!-- Enums -->
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:for-each select="//enum">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="genEnum">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="enumname" select="@name" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="filename" select="concat(@name, '.java')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:for-each>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <!-- Interfaces -->
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:for-each select="//interface">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="self_target" select="current()/ancestor::if/@target"/>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:variable name="module" select="current()/ancestor::module/@name"/>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <!-- We don't need WSDL-specific interfaces here -->
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:if test="not($self_target='wsdl') and not($module)">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:call-template name="genIface">
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="ifname" select="@name" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync <xsl:with-param name="filename" select="concat(@name, '.java')" />
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:call-template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:if>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync </xsl:for-each>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:template>
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync
b63a8e349101c3cacb413cfdc13472bd1f639c4bvboxsync</xsl:stylesheet>