Update of /cvsroot/kuml/kuml/libkuml/uml/tools
In directory usw-pr-cvs1:/tmp/cvs-serv20538
Modified Files:
gen_proxy_hs.xsl
Log Message:
Spoke too soon.
Removed create_<class> for abstract classes.
Hacked in better comma separation for create_<class> parameters.
Index: gen_proxy_hs.xsl
===================================================================
RCS file: /cvsroot/kuml/kuml/libkuml/uml/tools/gen_proxy_hs.xsl,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** gen_proxy_hs.xsl 2001/05/23 21:37:17 1.4
--- gen_proxy_hs.xsl 2001/05/23 22:18:43 1.5
***************
*** 38,43 ****
-
-
<!-- Templates to do inheritance
These templates all use the inherit mode.
--- 38,41 ----
***************
*** 63,69 ****
-
-
-
<!-- Templates to do parameters to the create_<class> method.
These templates all use the create_params mode.
--- 61,64 ----
***************
*** 83,87 ****
<xsl:template match="Model:Attribute" mode="create_params">
! <xsl:variable name="type_ref" select="@type"/>
<xsl:apply-templates
select='/descendant::Model:DataType[attribute::xmi.id=$type_ref]/Model:DataType.typeCode'
--- 78,89 ----
<xsl:template match="Model:Attribute" mode="create_params">
!
! <!-- Hack!! If class name != ModelElement or attribute name != name.. -->
! <xsl:if
! test='not(ancestor::Model:Class/@name = "ModelElement" and @name = "name")'>
! <xsl:text>, </xsl:text>
! </xsl:if>
!
! <xsl:variable name="type_ref" select="@type"/>
<xsl:apply-templates
select='/descendant::Model:DataType[attribute::xmi.id=$type_ref]/Model:DataType.typeCode'
***************
*** 94,98 ****
<xsl:with-param name="position" select="1"/>
</xsl:call-template>
- <xsl:text>, </xsl:text>
</xsl:template>
--- 96,99 ----
***************
*** 269,294 ****
</xsl:if>
<!-- create_<class> method. -->
! <xsl:text> </xsl:text>
! <xsl:text> </xsl:text>
! <xsl:value-of select="$package_name"/>
! <xsl:text>::</xsl:text>
! <xsl:value-of select="$class_name"/>
! <xsl:text>_ptr create_</xsl:text>
! <xsl:value-of select="$processed_cn"/>
! <xsl:text>( </xsl:text>
! <xsl:apply-templates mode="create_params" select="."/>
! <xsl:text> ) </xsl:text>
! <xsl:text> throw( </xsl:text>
! <xsl:text> ::CORBA::SystemException, </xsl:text>
! <xsl:text> ::Reflective::MofError) </xsl:text>
! <xsl:text> ; </xsl:text>
! <xsl:text> </xsl:text>
<xsl:text> protected: </xsl:text>
--- 270,300 ----
</xsl:if>
+ <xsl:text> </xsl:text>
+
<!-- create_<class> method. -->
! <xsl:if test='@isAbstract = "false"'>
! <xsl:text> </xsl:text>
! <xsl:value-of select="$package_name"/>
! <xsl:text>::</xsl:text>
! <xsl:value-of select="$class_name"/>
! <xsl:text>_ptr create_</xsl:text>
! <xsl:value-of select="$processed_cn"/>
! <xsl:text>( </xsl:text>
! <xsl:apply-templates mode="create_params" select="."/>
! <xsl:text> ) </xsl:text>
! <xsl:text> throw( </xsl:text>
! <xsl:text> ::CORBA::SystemException, </xsl:text>
! <xsl:text> ::Reflective::MofError) </xsl:text>
! <xsl:text> ; </xsl:text>
!
! <xsl:text> </xsl:text>
+ </xsl:if>
+
<xsl:text> protected: </xsl:text>
***************
*** 309,313 ****
<xsl:text> private: </xsl:text>
! <xsl:text> </xsl:text>
<xsl:text> static list<</xsl:text>
--- 315,319 ----
<xsl:text> private: </xsl:text>
! <xsl:text> </xsl:text>
<xsl:text> static list<</xsl:text>
|