Author: chatellier Date: 2009-02-20 16:27:10 +0000 (Fri, 20 Feb 2009) New Revision: 456 Added: lutingenerator/trunk/src/test/resources/xmi/2.1/http-storage-api/ lutingenerator/trunk/src/test/resources/xmi/2.1/http-storage-api/src/ lutingenerator/trunk/src/test/resources/xmi/2.1/http-storage-api/src/main/ lutingenerator/trunk/src/test/resources/xmi/2.1/http-storage-api/src/main/uml/ lutingenerator/trunk/src/test/resources/xmi/2.1/http-storage-api/src/main/uml/conception.uml lutingenerator/trunk/src/test/resources/xmi/2.1/org.sharengo.s4a.utils/ lutingenerator/trunk/src/test/resources/xmi/2.1/org.sharengo.s4a.utils/src/ lutingenerator/trunk/src/test/resources/xmi/2.1/org.sharengo.s4a.utils/src/main/ lutingenerator/trunk/src/test/resources/xmi/2.1/org.sharengo.s4a.utils/src/main/uml/ lutingenerator/trunk/src/test/resources/xmi/2.1/org.sharengo.s4a.utils/src/main/uml/conception.uml lutingenerator/trunk/src/test/resources/xmi/2.1/vpod.uml Removed: lutingenerator/trunk/src/main/resources/uml/ Modified: lutingenerator/trunk/pom.xml lutingenerator/trunk/src/main/xsl/xmi2.1ToObjectModel.xsl lutingenerator/trunk/src/test/java/org/codelutin/generator/xmi/objectmodel/XMI21ToObjectModelTest.java lutingenerator/trunk/src/test/java/org/codelutin/generator/xmi/util/ResourceResolver.java lutingenerator/trunk/src/test/resources/log4j.properties Log: Am?\195?\169lioration de la feuille se style pour les mod?\195?\168le utilisant d'autres mod?\195?\168les. Utilisation des resources eclipse du d?\195?\169pot maven. Modified: lutingenerator/trunk/pom.xml =================================================================== --- lutingenerator/trunk/pom.xml 2009-02-20 16:05:41 UTC (rev 455) +++ lutingenerator/trunk/pom.xml 2009-02-20 16:27:10 UTC (rev 456) @@ -68,6 +68,20 @@ <version>1.1.1</version> <scope>runtime</scope> </dependency> + + <!-- Meta model uml d'eclipse --> + <dependency> + <groupId>org.eclipse.uml2.uml</groupId> + <artifactId>resources</artifactId> + <version>2.1.0-v200706251652</version> + <scope>runtime</scope> + <exclusions> + <exclusion> + <groupId>org.eclipse.uml2</groupId> + <artifactId>uml</artifactId> + </exclusion> + </exclusions> + </dependency> </dependencies> Modified: lutingenerator/trunk/src/main/xsl/xmi2.1ToObjectModel.xsl =================================================================== --- lutingenerator/trunk/src/main/xsl/xmi2.1ToObjectModel.xsl 2009-02-20 16:05:41 UTC (rev 455) +++ lutingenerator/trunk/src/main/xsl/xmi2.1ToObjectModel.xsl 2009-02-20 16:27:10 UTC (rev 456) @@ -1,402 +1,409 @@ -<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:xalan="http://xml.apache.org/xslt" - xmlns:extensions="http://www.codelutin.com/XSLTExtensions" - xmlns:redirect="http://xml.apache.org/xalan/redirect" - extension-element-prefixes="extensions redirect" - xmlns="http://www.codelutin.org/lutingenerator/objectModel" - xmlns:packageValidator="xalan://org.codelutin.generator.PackageValidator" - xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" - xmlns:uml="http://www.eclipse.org/uml2/2.1.0/UML"> - - <xsl:output method="xml" encoding="UTF-8" indent="yes" xalan:indent-amount="2"/> +<xsl:stylesheet version="1.0" + xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xalan="http://xml.apache.org/xslt" + xmlns:extensions="http://www.codelutin.com/XSLTExtensions" + xmlns:redirect="http://xml.apache.org/xalan/redirect" + extension-element-prefixes="extensions redirect" + xmlns="http://www.codelutin.org/lutingenerator/objectModel" + xmlns:packageValidator="xalan://org.codelutin.generator.PackageValidator" + xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:uml="http://www.eclipse.org/uml2/2.1.0/UML"> - <!-- processing entry point. We'll process everything from that root package path. Everything else is ignored --> - <xsl:param name="fullPackagePath"/> - <xsl:param name="extraPackages"/> + <xsl:output method="xml" encoding="UTF-8" indent="yes" + xalan:indent-amount="2" /> - <!-- + <!-- + processing entry point. We'll process everything from that root + package path. Everything else is ignored + --> + <xsl:param name="fullPackagePath" /> + <xsl:param name="extraPackages" /> + + <!-- . Matching templates --> - - <xsl:template match="uml:Model"> - <xsl:element name="objectModel"> - <xsl:attribute name="name"> - <xsl:value-of select="@name"/> + + <xsl:template match="uml:Model"> + <xsl:element name="objectModel"> + <xsl:attribute name="name"> + <xsl:value-of select="@name" /> </xsl:attribute> - - <xsl:apply-templates> - <xsl:with-param name="parentLocalPackageName"/> - </xsl:apply-templates> - </xsl:element> - </xsl:template> - - <xsl:template match="text()|attribute"/> - - <xsl:template match="*"> - <xsl:param name="parentLocalPackageName"/> - <xsl:apply-templates> - <xsl:with-param name="parentLocalPackageName"> - <xsl:value-of select="$parentLocalPackageName"/> - </xsl:with-param> - </xsl:apply-templates> - </xsl:template> - - <!-- uml:Package --> - <xsl:template match="packagedElement[@xmi:type='uml:Package']"> - <xsl:param name="parentLocalPackageName"/> - - <xsl:variable name="packageName"> - <xsl:value-of select="@name"/> - </xsl:variable> - - <xsl:variable name="localPackageName"> - <xsl:value-of select="$parentLocalPackageName"/> - <xsl:value-of select="$packageName"/> + + <xsl:apply-templates> + <xsl:with-param name="parentLocalPackageName" /> + </xsl:apply-templates> + </xsl:element> + </xsl:template> + + <xsl:template match="text()|attribute" /> + + <xsl:template match="*"> + <xsl:param name="parentLocalPackageName" /> + <xsl:apply-templates> + <xsl:with-param name="parentLocalPackageName"> + <xsl:value-of select="$parentLocalPackageName" /> + </xsl:with-param> + </xsl:apply-templates> + </xsl:template> + + <!-- uml:Package --> + <xsl:template match="packagedElement[@xmi:type='uml:Package']"> + <xsl:param name="parentLocalPackageName" /> + + <xsl:variable name="packageName"> + <xsl:value-of select="@name" /> </xsl:variable> - + + <xsl:variable name="localPackageName"> + <xsl:value-of select="$parentLocalPackageName" /> + <xsl:value-of select="$packageName" /> + </xsl:variable> + <xsl:variable name="localPackageNameDot"> - <xsl:value-of select="concat($localPackageName,'.')"/> + <xsl:value-of select="concat($localPackageName,'.')" /> </xsl:variable> - - <xsl:apply-templates> - <xsl:with-param name="parentLocalPackageName"> - <xsl:value-of select="$localPackageName"/> - </xsl:with-param> - </xsl:apply-templates> - </xsl:template> - - <!-- uml:Class --> - <xsl:template match="packagedElement[@xmi:type='uml:Class']"> - <xsl:param name="parentLocalPackageName"/> - - <xsl:element name="class"> - <!-- class properties --> - <xsl:attribute name="name"> - <xsl:value-of select="@name"/> + <xsl:apply-templates> + <xsl:with-param name="parentLocalPackageName"> + <xsl:value-of select="$localPackageName" /> + </xsl:with-param> + </xsl:apply-templates> + + </xsl:template> + + <!-- uml:Class --> + <xsl:template match="packagedElement[@xmi:type='uml:Class']"> + <xsl:param name="parentLocalPackageName" /> + + <xsl:element name="class"> + <!-- class properties --> + <xsl:attribute name="name"> + <xsl:value-of select="@name" /> </xsl:attribute> - - <xsl:attribute name="package"> - <xsl:value-of select="$parentLocalPackageName"/> + + <xsl:attribute name="package"> + <xsl:value-of select="$parentLocalPackageName" /> </xsl:attribute> - - <xsl:if test="@isAbstract='true'"> - <xsl:attribute name="abstract"> + + <xsl:if test="@isAbstract='true'"> + <xsl:attribute name="abstract"> <xsl:text>true</xsl:text> </xsl:attribute> - </xsl:if> - - <!-- stereotypes --> - <xsl:for-each select="/child::*[@base_Class = current()/@xmi:id]"> - <xsl:element name="stereotype"> - <xsl:attribute name="name"> - <xsl:value-of select="local-name()"/> + </xsl:if> + + <!-- stereotypes --> + <xsl:for-each select="/child::*[@base_Class = current()/@xmi:id]"> + <xsl:element name="stereotype"> + <xsl:attribute name="name"> + <xsl:value-of select="local-name()" /> </xsl:attribute> - </xsl:element> - </xsl:for-each> - - <!-- interfaces --> - <xsl:apply-templates select="interfaceRealization"/> - - <!-- extends --> - <xsl:apply-templates select="generalization"/> - - <!-- attributes --> - <xsl:apply-templates select="ownedAttribute"/> - - <!-- operations --> - <xsl:apply-templates select="ownedOperation"/> - - <!-- associations , Association & AssociationClass --> - <xsl:call-template name="UMLAssociations"/> + </xsl:element> + </xsl:for-each> + <!-- interfaces --> + <xsl:apply-templates select="interfaceRealization" /> + + <!-- extends --> + <xsl:apply-templates select="generalization" /> + + <!-- attributes --> + <xsl:apply-templates select="ownedAttribute" /> + + <!-- operations --> + <xsl:apply-templates select="ownedOperation" /> + + <!-- associations , Association & AssociationClass --> + <xsl:call-template name="UMLAssociations" /> + <!-- Documentation... --> - <xsl:call-template name="taggedValue"/> - </xsl:element> - </xsl:template> - + <xsl:call-template name="taggedValue" /> + </xsl:element> + </xsl:template> + <!-- uml:AssociationClass --> <xsl:template match="packagedElement[@xmi:type='uml:AssociationClass']"> - <xsl:param name="parentLocalPackageName"/> - + <xsl:param name="parentLocalPackageName" /> + <xsl:element name="associationClass"> <!-- class properties --> <xsl:attribute name="name"> - <xsl:value-of select="@name"/> + <xsl:value-of select="@name" /> </xsl:attribute> - + <xsl:attribute name="package"> - <xsl:value-of select="$parentLocalPackageName"/> + <xsl:value-of select="$parentLocalPackageName" /> </xsl:attribute> - + <xsl:if test="@isAbstract='true'"> <xsl:attribute name="abstract"> <xsl:text>true</xsl:text> </xsl:attribute> </xsl:if> - + <!-- stereotypes --> <xsl:for-each select="/child::*[@base_Class = current()/@xmi:id]"> <xsl:element name="stereotype"> <xsl:attribute name="name"> - <xsl:value-of select="local-name()"/> + <xsl:value-of select="local-name()" /> </xsl:attribute> </xsl:element> </xsl:for-each> - + <!-- interfaces --> - <xsl:apply-templates select="interfaceRealization"/> - + <xsl:apply-templates select="interfaceRealization" /> + <!-- extends --> - <xsl:apply-templates select="generalization"/> - + <xsl:apply-templates select="generalization" /> + <!-- attributes --> - <xsl:apply-templates select="ownedAttribute"/> - + <xsl:apply-templates select="ownedAttribute" /> + <!-- operations --> - <xsl:apply-templates select="ownedOperation"/> - + <xsl:apply-templates select="ownedOperation" /> + <!-- associations --> - <xsl:call-template name="Participant"/> + <xsl:call-template name="Participant" /> <!-- Documentation... --> - <xsl:call-template name="taggedValue"/> + <xsl:call-template name="taggedValue" /> </xsl:element> </xsl:template> - - <!-- uml:Interface --> - <xsl:template match="packagedElement[@xmi:type='uml:Interface']"> - <xsl:param name="parentLocalPackageName"/> - - <xsl:element name="interface"> - <!-- interface properties --> - <xsl:attribute name="name"> - <xsl:value-of select="@name"/> + + <!-- uml:Interface --> + <xsl:template match="packagedElement[@xmi:type='uml:Interface']"> + <xsl:param name="parentLocalPackageName" /> + + <xsl:element name="interface"> + <!-- interface properties --> + <xsl:attribute name="name"> + <xsl:value-of select="@name" /> </xsl:attribute> - - <xsl:attribute name="package"> - <xsl:value-of select="$parentLocalPackageName"/> + + <xsl:attribute name="package"> + <xsl:value-of select="$parentLocalPackageName" /> </xsl:attribute> - - <xsl:if test="@isAbstract='true'"> - <xsl:attribute name="abstract"> + + <xsl:if test="@isAbstract='true'"> + <xsl:attribute name="abstract"> <xsl:text>true</xsl:text> </xsl:attribute> - </xsl:if> - - <!-- stereotypes --> - <xsl:for-each select="/child::*[@base_Interface = current()/@xmi:id]"> - <xsl:element name="stereotype"> - <xsl:attribute name="name"> - <xsl:value-of select="local-name()"/> + </xsl:if> + + <!-- stereotypes --> + <xsl:for-each + select="/child::*[@base_Interface = current()/@xmi:id]"> + <xsl:element name="stereotype"> + <xsl:attribute name="name"> + <xsl:value-of select="local-name()" /> </xsl:attribute> - </xsl:element> - </xsl:for-each> - - <!-- extends --> - <xsl:apply-templates select="generalization"/> - - <!-- operations --> - <xsl:apply-templates select="ownedOperation"/> - + </xsl:element> + </xsl:for-each> + + <!-- extends --> + <xsl:apply-templates select="generalization" /> + + <!-- operations --> + <xsl:apply-templates select="ownedOperation" /> + <!-- Documentation... --> - <xsl:call-template name="taggedValue"/> - - </xsl:element> - </xsl:template> - + <xsl:call-template name="taggedValue" /> + + </xsl:element> + </xsl:template> + <!-- interfaceRealization --> - <xsl:template match="interfaceRealization"> - <xsl:element name="interface"> - <xsl:attribute name="name"> + <xsl:template match="interfaceRealization"> + <xsl:element name="interface"> + <xsl:attribute name="name"> <xsl:choose> <xsl:when test="supplier"> <xsl:call-template name="fullClassName"> - <xsl:with-param name="node" select="supplier"/> + <xsl:with-param name="node" select="supplier" /> </xsl:call-template> </xsl:when> <xsl:when test="@supplier"> <xsl:call-template name="fullClassName2"> <xsl:with-param name="node" - select="/uml:Model/descendant::packagedElement[@xmi:type='uml:Interface'][@xmi:id=current()/@supplier]"/> + select="//uml:Model/descendant::packagedElement[@xmi:type='uml:Interface'][@xmi:id=current()/@supplier]" /> </xsl:call-template> </xsl:when> </xsl:choose> </xsl:attribute> - </xsl:element> - </xsl:template> - - <xsl:template match="generalization"> - - <xsl:element name="superClass"> - <xsl:attribute name="name"> + </xsl:element> + </xsl:template> + + <xsl:template match="generalization"> + + <xsl:element name="superClass"> + <xsl:attribute name="name"> <xsl:choose> <xsl:when test="general"> <xsl:call-template name="fullClassName"> - <xsl:with-param name="node" select="general"/> + <xsl:with-param name="node" select="general" /> </xsl:call-template> </xsl:when> <xsl:when test="@general"> <xsl:call-template name="fullClassName2"> <xsl:with-param name="node" - select="//uml:Model/descendant::packagedElement[@xmi:type='uml:Class'][@xmi:id=current()/@general]"/> + select="//uml:Model/descendant::packagedElement[@xmi:type='uml:Class'][@xmi:id=current()/@general]" /> </xsl:call-template> </xsl:when> </xsl:choose> </xsl:attribute> - </xsl:element> - </xsl:template> - - <xsl:template match="ownedAttribute"> - - <xsl:element name="attribute"> - <xsl:attribute name="name"> - <xsl:value-of select="@name"/> + </xsl:element> + </xsl:template> + + <xsl:template match="ownedAttribute"> + + <xsl:element name="attribute"> + <xsl:attribute name="name"> + <xsl:value-of select="@name" /> </xsl:attribute> - + <xsl:choose> <xsl:when test="@visibility"> <xsl:attribute name="visibility"> - <xsl:value-of select="@visibility"/> + <xsl:value-of select="@visibility" /> </xsl:attribute> </xsl:when> <xsl:otherwise> <xsl:attribute name="visibility">public</xsl:attribute> </xsl:otherwise> </xsl:choose> - <xsl:call-template name="UMLParameter"/> - <xsl:call-template name="taggedValue"/> - </xsl:element> - </xsl:template> - - <xsl:template match="ownedOperation"> - - <xsl:element name="operation"> - <xsl:attribute name="name"> - <xsl:value-of select="@name"/> + <xsl:call-template name="UMLParameter" /> + <xsl:call-template name="taggedValue" /> + </xsl:element> + </xsl:template> + + <xsl:template match="ownedOperation"> + + <xsl:element name="operation"> + <xsl:attribute name="name"> + <xsl:value-of select="@name" /> </xsl:attribute> - - <xsl:choose> + + <xsl:choose> <xsl:when test="@visibility"> <xsl:attribute name="visibility"> - <xsl:value-of select="@visibility"/> + <xsl:value-of select="@visibility" /> </xsl:attribute> </xsl:when> <xsl:otherwise> <xsl:attribute name="visibility">public</xsl:attribute> </xsl:otherwise> </xsl:choose> - - <xsl:if test="@isAbstract='true'"> - <xsl:attribute name="abstract"> + + <xsl:if test="@isAbstract='true'"> + <xsl:attribute name="abstract"> <xsl:text>true</xsl:text> </xsl:attribute> - </xsl:if> - - <!-- operation parameters --> - <xsl:for-each select="ownedParameter"> - <xsl:choose> - <xsl:when test="@direction = 'return'"> - <xsl:element name="returnParameter"> - <xsl:call-template name="UMLParameter"/> - </xsl:element> - </xsl:when> - <xsl:otherwise> - <xsl:element name="parameter"> - <xsl:attribute name="name"> - <xsl:value-of select="@name"/> + </xsl:if> + + <!-- operation parameters --> + <xsl:for-each select="ownedParameter"> + <xsl:choose> + <xsl:when test="@direction = 'return'"> + <xsl:element name="returnParameter"> + <xsl:call-template name="UMLParameter" /> + </xsl:element> + </xsl:when> + <xsl:otherwise> + <xsl:element name="parameter"> + <xsl:attribute name="name"> + <xsl:value-of select="@name" /> </xsl:attribute> - <xsl:call-template name="UMLParameter"/> - </xsl:element> - </xsl:otherwise> - </xsl:choose> - </xsl:for-each> - - <!-- operation exceptions --> - <xsl:choose> - <xsl:when test="raisedException"> - <xsl:for-each select="raisedException"> - <xsl:element name="exceptionParameter"> - <xsl:attribute name="type"> + <xsl:call-template name="UMLParameter" /> + </xsl:element> + </xsl:otherwise> + </xsl:choose> + </xsl:for-each> + + <!-- operation exceptions --> + <xsl:choose> + <xsl:when test="raisedException"> + <xsl:for-each select="raisedException"> + <xsl:element name="exceptionParameter"> + <xsl:attribute name="type"> <xsl:call-template name="fullClassName"> - <xsl:with-param name="node" select="."/> + <xsl:with-param name="node" select="." /> </xsl:call-template> </xsl:attribute> - </xsl:element> - </xsl:for-each> - </xsl:when> - <xsl:when test="@raisedException"> - <xsl:call-template name="ownedOperation-raisedException"> - <xsl:with-param name="value" select="string(@raisedException)"/> - </xsl:call-template> - </xsl:when> - </xsl:choose> - - </xsl:element> - </xsl:template> - - <!-- + </xsl:element> + </xsl:for-each> + </xsl:when> + <xsl:when test="@raisedException"> + <xsl:call-template name="ownedOperation-raisedException"> + <xsl:with-param name="value" + select="string(@raisedException)" /> + </xsl:call-template> + </xsl:when> + </xsl:choose> + + </xsl:element> + </xsl:template> + + <!-- . Named templates --> - <!-- find reference listed in ownedOperation/@raisedException --> - <xsl:template name="ownedOperation-raisedException"> - <xsl:param name="value"/> - - <xsl:choose> - <xsl:when test="contains($value, ' ')"> - <xsl:call-template name="ownedOperation-raisedException"> - <xsl:with-param name="value" select="substring-before($value, ' ')"/> - </xsl:call-template> - <xsl:call-template name="ownedOperation-raisedException"> - <xsl:with-param name="value" select="substring-after($value, ' ')"/> - </xsl:call-template> - </xsl:when> - <xsl:when test="$value != ''"> - <xsl:element name="exceptionParameter"> - <xsl:attribute name="type"> + <!-- find reference listed in ownedOperation/@raisedException --> + <xsl:template name="ownedOperation-raisedException"> + <xsl:param name="value" /> + + <xsl:choose> + <xsl:when test="contains($value, ' ')"> + <xsl:call-template name="ownedOperation-raisedException"> + <xsl:with-param name="value" + select="substring-before($value, ' ')" /> + </xsl:call-template> + <xsl:call-template name="ownedOperation-raisedException"> + <xsl:with-param name="value" + select="substring-after($value, ' ')" /> + </xsl:call-template> + </xsl:when> + <xsl:when test="$value != ''"> + <xsl:element name="exceptionParameter"> + <xsl:attribute name="type"> <xsl:call-template name="fullClassName2"> <xsl:with-param name="node" - select="//uml:Model/descendant::packagedElement[@xmi:type='uml:Class'][@xmi:id=$value]"/> + select="//uml:Model/descendant::packagedElement[@xmi:type='uml:Class'][@xmi:id=$value]" /> </xsl:call-template> </xsl:attribute> - </xsl:element> - </xsl:when> - </xsl:choose> - - </xsl:template> - - <!-- + </xsl:element> + </xsl:when> + </xsl:choose> + + </xsl:template> + + <!-- called by ownedAttribute and ownedOperation --> - <xsl:template name="UMLParameter"> - - <xsl:choose> - <xsl:when test="type"> - <xsl:attribute name="type"> + <xsl:template name="UMLParameter"> + + <xsl:choose> + <xsl:when test="type"> + <xsl:attribute name="type"> <xsl:call-template name="fullClassName"> - <xsl:with-param name="node" select="type"/> + <xsl:with-param name="node" select="type" /> </xsl:call-template> </xsl:attribute> - </xsl:when> - - <xsl:when test="@type"> - <xsl:attribute name="type"> - <xsl:variable name="typeref" - select="//uml:Model/descendant::packagedElement[@xmi:type='uml:Enumeration' or @xmi:type='uml:DataType' or @xmi:type='uml:Class' or @xmi:type='uml:Interface'][@xmi:id=current()/@type]"/> + </xsl:when> + + <xsl:when test="@type"> + <xsl:attribute name="type"> + <xsl:variable name="typeref" + select="//uml:Model/descendant::packagedElement[@xmi:type='uml:Enumeration' or @xmi:type='uml:DataType' or @xmi:type='uml:Class' or @xmi:type='uml:Interface'][@xmi:id=current()/@type]" /> <xsl:call-template name="fullClassName2"> - <xsl:with-param name="node" select="$typeref"/> + <xsl:with-param name="node" select="$typeref" /> </xsl:call-template> </xsl:attribute> - </xsl:when> - </xsl:choose> - </xsl:template> - + </xsl:when> + </xsl:choose> + </xsl:template> + <!-- taggedValue. e.i. documentation --> @@ -404,120 +411,124 @@ <xsl:for-each select="eAnnotations/details"> <xsl:element name="tagValue"> <xsl:attribute name="name"> - <xsl:value-of select="@key"/> + <xsl:value-of select="@key" /> </xsl:attribute> <xsl:attribute name="value"> - <xsl:value-of select="@value"/> + <xsl:value-of select="@value" /> </xsl:attribute> </xsl:element> </xsl:for-each> </xsl:template> - + <!-- uml:Association --> - <xsl:template name="UMLAssociations"> - <xsl:for-each - select="following-sibling::packagedElement[@xmi:type='uml:Association']/ownedEnd[@type=current()/@xmi:id]"> - - <xsl:variable name="endnode" - select="parent::packagedElement/ownedEnd[@association=current()/@association][not(@type) or @type != current()/@type]"/> - - <xsl:if test="$endnode"> - - <xsl:element name="attribute"> - <xsl:attribute name="name"> - <xsl:value-of select="$endnode/@name"/> + <xsl:template name="UMLAssociations"> + <xsl:for-each + select="following-sibling::packagedElement[@xmi:type='uml:Association']/ownedEnd[@type=current()/@xmi:id]"> + + <xsl:variable name="endnode" + select="parent::packagedElement/ownedEnd[@association=current()/@association][not(@type) or @type != current()/@type]" /> + + <xsl:if test="$endnode"> + + <xsl:element name="attribute"> + <xsl:attribute name="name"> + <xsl:value-of select="$endnode/@name" /> </xsl:attribute> - - <xsl:choose> - <xsl:when test="$endnode/type"> - <xsl:attribute name="type"> + + <xsl:choose> + <xsl:when test="$endnode/type"> + <xsl:attribute name="type"> <xsl:call-template name="fullClassName"> - <xsl:with-param name="node" select="$endnode/type"/> + <xsl:with-param name="node" select="$endnode/type" /> </xsl:call-template> </xsl:attribute> - </xsl:when> - - <xsl:when test="$endnode/@type"> - <xsl:attribute name="type"> + </xsl:when> + + <xsl:when test="$endnode/@type"> + <xsl:attribute name="type"> <xsl:variable name="typeref" - select="//uml:Model/descendant::packagedElement[@xmi:type='uml:Enumeration' or @xmi:type='uml:DataType' or @xmi:type='uml:Class' or @xmi:type='uml:Interface'][@xmi:id=$endnode/@type]"/> + select="//uml:Model/descendant::packagedElement[@xmi:type='uml:Enumeration' or @xmi:type='uml:DataType' or @xmi:type='uml:Class' or @xmi:type='uml:Interface'][@xmi:id=$endnode/@type]" /> <xsl:call-template name="fullClassName2"> - <xsl:with-param name="node" select="$typeref"/> + <xsl:with-param name="node" select="$typeref" /> </xsl:call-template> </xsl:attribute> - </xsl:when> - </xsl:choose> - - <xsl:if test="$endnode/@aggregation"> - <xsl:attribute name="associationType"> - <xsl:value-of select="$endnode/@aggregation"/> + </xsl:when> + </xsl:choose> + + <xsl:if test="$endnode/@aggregation"> + <xsl:attribute name="associationType"> + <xsl:value-of select="$endnode/@aggregation" /> </xsl:attribute> - </xsl:if> - - <xsl:attribute name="minMultiplicity"> + </xsl:if> + + <xsl:attribute name="minMultiplicity"> <xsl:choose> <xsl:when test="$endnode/lowerValue/@value"> - <xsl:value-of select="$endnode/lowerValue/@value"/> + <xsl:value-of select="$endnode/lowerValue/@value" /> </xsl:when> <xsl:otherwise> <xsl:text>0</xsl:text> </xsl:otherwise> </xsl:choose> </xsl:attribute> - - <xsl:attribute name="maxMultiplicity"> + + <xsl:attribute name="maxMultiplicity"> <xsl:choose> <xsl:when test="$endnode/upperValue/@value"> - <xsl:value-of select="$endnode/upperValue/@value"/> + <xsl:value-of select="$endnode/upperValue/@value" /> </xsl:when> <xsl:otherwise> <xsl:text>*</xsl:text> </xsl:otherwise> </xsl:choose> </xsl:attribute> - - <xsl:if - test="contains(parent::packagedElement/@navigableOwnedEnd, $endnode/@xmi:id)"> - <xsl:attribute name="navigable"> + + <xsl:if + test="contains(parent::packagedElement/@navigableOwnedEnd, $endnode/@xmi:id)"> + <xsl:attribute name="navigable"> <xsl:text>true</xsl:text> </xsl:attribute> - </xsl:if> - - <xsl:if test="$endnode/@isOrdered"> - <xsl:attribute name="ordering"> + </xsl:if> + + <xsl:if test="$endnode/@isOrdered"> + <xsl:attribute name="ordering"> <xsl:text>true</xsl:text> </xsl:attribute> - </xsl:if> - - </xsl:element> - </xsl:if> - </xsl:for-each> - </xsl:template> - + </xsl:if> + + </xsl:element> + </xsl:if> + </xsl:for-each> + </xsl:template> + <xsl:template name="Participant"> <xsl:for-each select="ownedEnd"> - + <xsl:variable name="endnode" - select="child::ownedEnd[@association=current()/@association][not(@type) or @type != current()/@type]"/> + select="child::ownedEnd[@association=current()/@association][not(@type) or @type != current()/@type]" /> <xsl:if test="$endnode"> <xsl:element name="participant"> <xsl:choose> <xsl:when test="$endnode/type"> <xsl:attribute name="type"> - <xsl:call-template name="fullClassName"> - <xsl:with-param name="node" select="$endnode/type"/> + <xsl:call-template + name="fullClassName"> + <xsl:with-param + name="node" select="$endnode/type" /> </xsl:call-template> </xsl:attribute> </xsl:when> - + <xsl:when test="$endnode/@type"> <xsl:attribute name="type"> <xsl:variable name="typeref" - select="//uml:Model/descendant::packagedElement[@xmi:type='uml:Enumeration' or @xmi:type='uml:DataType' or @xmi:type='uml:Class' or @xmi:type='uml:Interface'][@xmi:id=$endnode/@type]"/> - <xsl:call-template name="fullClassName2"> - <xsl:with-param name="node" select="$typeref"/> + select="//uml:Model/descendant::packagedElement[@xmi:type='uml:Enumeration' or @xmi:type='uml:DataType' or @xmi:type='uml:Class' or @xmi:type='uml:Interface'][@xmi:id=$endnode/@type]" /> + <xsl:call-template + name="fullClassName2"> + <xsl:with-param + name="node" select="$typeref" /> </xsl:call-template> </xsl:attribute> </xsl:when> @@ -526,102 +537,130 @@ </xsl:if> </xsl:for-each> </xsl:template> - - <!-- - node param must be a Xpath node. - the node designed by node param must have @xmi:type. - walks thru the model in order to print super package names. - print fullClassName of type designed by node param. - --> - <xsl:template name="fullClassName2"> - <xsl:param name="node"/> - - <xsl:choose> - <xsl:when test="$node[@xmi:type='uml:DataType']"> + + <!-- + node param must be a Xpath node. the node designed by node param + must have @xmi:type. walks thru the model in order to print + super package names. print fullClassName of type designed by + node param. + --> + <xsl:template name="fullClassName2"> + <xsl:param name="node" /> + + <xsl:choose> + <xsl:when test="$node[@xmi:type='uml:DataType']"> <xsl:call-template name="fullClassName2"> <xsl:with-param name="node" - select="$node/parent::packagedElement[@xmi:type = 'uml:Package']"/> + select="$node/parent::packagedElement[@xmi:type = 'uml:Package']" /> </xsl:call-template> - <xsl:value-of select="$node/@name"/> - </xsl:when> - - <xsl:when test="$node[@xmi:type='uml:Enumeration']"> - <xsl:value-of select="$node/@name"/> - </xsl:when> - - <xsl:when test="$node[@xmi:type = 'uml:Class']"> - <xsl:call-template name="fullClassName2"> - <xsl:with-param name="node" - select="$node/ancestor::packagedElement[@xmi:type = 'uml:Package']"/> - </xsl:call-template> - <xsl:value-of select="$node/@name"/> - </xsl:when> - - <xsl:when test="$node[@xmi:type = 'uml:Interface']"> - <xsl:call-template name="fullClassName2"> - <xsl:with-param name="node" - select="$node/ancestor::packagedElement[@xmi:type = 'uml:Package']"/> - </xsl:call-template> - <xsl:value-of select="$node/@name"/> - </xsl:when> - - <xsl:when test="$node[@xmi:type='uml:Package']"> - <xsl:choose> - <xsl:when test="$node/parent::packagedElement[@xmi:type = 'uml:Package']"> - <xsl:call-template name="fullClassName2"> - <xsl:with-param name="node" - select="$node/parent::packagedElement[@xmi:type = 'uml:Package']"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:call-template name="fullClassName2"> - <xsl:with-param name="node" select="$node/parent::uml:Model"/> - </xsl:call-template> - </xsl:otherwise> - </xsl:choose> - <xsl:value-of select="concat($node/@name, '.')"/> - </xsl:when> - - <!-- - <xsl:when test="$node[name()='uml:Model']"> - <xsl:value-of select="concat($modelName, '.')"/> - </xsl:when> - --> - </xsl:choose> - </xsl:template> - - <!-- - node param must be a Xpath node. - the node designed by node param must have @xmi:type and @href attributes. - print fullClassName of type designed by node param (helped by fullClassName2 template). - --> - <xsl:template name="fullClassName"> - <xsl:param name="node"/> - - <xsl:variable name="typeref" select="$node/@href"/> - - <xsl:choose> - - <xsl:when - test="$node/@xmi:type = 'uml:PrimitiveType' or $node/@xmi:type = 'uml:Enumeration' or $node/@xmi:type = 'uml:DataType' or $node/@xmi:type = 'uml:Class' or $node/@xmi:type = 'uml:Interface'"> - <xsl:variable name="xmi-type" select="$node/@xmi:type"/> - <xsl:variable name="external-url" select="substring-before($typeref, '#')"/> - <xsl:variable name="external-id" select="substring-after($typeref, '#')"/> - - <xsl:choose> - <xsl:when test="$external-url=''"> - <!-- internal reference --> - <xsl:call-template name="fullClassName2"> - <xsl:with-param name="node" select="//uml:Model/descendant::packagedElement[@xmi:type=$xmi-type][@xmi:id=$external-id]"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="document($external-url)/xmi:XMI/child::*[@base_PrimitiveType=$external-id]/@instanceClassName"/> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - - </xsl:choose> - </xsl:template> - + <xsl:value-of select="$node/@name" /> + </xsl:when> + + <xsl:when test="$node[@xmi:type='uml:Enumeration']"> + <xsl:value-of select="$node/@name" /> + </xsl:when> + + <xsl:when test="$node[@xmi:type = 'uml:Class']"> + <xsl:call-template name="fullClassName2"> + <xsl:with-param name="node" + select="$node/ancestor::packagedElement[@xmi:type = 'uml:Package']" /> + </xsl:call-template> + <xsl:value-of select="$node/@name" /> + </xsl:when> + + <xsl:when test="$node[@xmi:type = 'uml:Interface']"> + <xsl:call-template name="fullClassName2"> + <xsl:with-param name="node" + select="$node/ancestor::packagedElement[@xmi:type = 'uml:Package']" /> + </xsl:call-template> + <xsl:value-of select="$node/@name" /> + </xsl:when> + + <xsl:when test="$node[@xmi:type='uml:Package']"> + <xsl:choose> + <xsl:when + test="$node/parent::packagedElement[@xmi:type = 'uml:Package']"> + <xsl:call-template name="fullClassName2"> + <xsl:with-param name="node" + select="$node/parent::packagedElement[@xmi:type = 'uml:Package']" /> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:call-template name="fullClassName2"> + <xsl:with-param name="node" + select="$node/parent::uml:Model" /> + </xsl:call-template> + </xsl:otherwise> + </xsl:choose> + <xsl:value-of select="concat($node/@name, '.')" /> + </xsl:when> + + <!-- + <xsl:when test="$node[name()='uml:Model']"> + <xsl:value-of select="concat($modelName, '.')"/> + </xsl:when> + --> + </xsl:choose> + </xsl:template> + + <!-- + node param must be a Xpath node. the node designed by node param + must have @xmi:type and @href attributes. print fullClassName of + type designed by node param (helped by fullClassName2 template). + --> + <xsl:template name="fullClassName"> + <xsl:param name="node" /> + + <xsl:variable name="typeref" select="$node/@href" /> + + <xsl:choose> + + <xsl:when test="$node/@xmi:type = 'uml:PrimitiveType'"> + <xsl:variable name="xmi-type" select="$node/@xmi:type" /> + <xsl:variable name="external-url" + select="substring-before($typeref, '#')" /> + <xsl:variable name="external-id" + select="substring-after($typeref, '#')" /> + + <xsl:choose> + <xsl:when test="$external-url=''"> + <!-- internal reference --> + <xsl:call-template name="fullClassName2"> + <xsl:with-param name="node" + select="//uml:Model/descendant::packagedElement[@xmi:type=$xmi-type][@xmi:id=$external-id]" /> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:value-of + select="document($external-url)/xmi:XMI/child::*[@base_PrimitiveType=$external-id]/@instanceClassName" /> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + + <xsl:when + test="$node/@xmi:type = 'uml:Enumeration' or $node/@xmi:type = 'uml:DataType' or $node/@xmi:type = 'uml:Class' or $node/@xmi:type = 'uml:Interface'"> + <xsl:variable name="xmi-type" select="$node/@xmi:type" /> + <xsl:variable name="external-url" + select="substring-before($typeref, '#')" /> + <xsl:variable name="external-id" + select="substring-after($typeref, '#')" /> + + <xsl:choose> + <xsl:when test="$external-url=''"> + <!-- internal reference --> + <xsl:call-template name="fullClassName2"> + <xsl:with-param name="node" + select="//uml:Model/descendant::packagedElement[@xmi:type=$xmi-type][@xmi:id=$external-id]" /> + </xsl:call-template> + </xsl:when> + <xsl:otherwise> + <xsl:value-of + select="document($external-url)/xmi:XMI/descendant::packagedElement[@xmi:id=$external-id]/@name" /> + </xsl:otherwise> + </xsl:choose> + </xsl:when> + + </xsl:choose> + </xsl:template> + </xsl:stylesheet> Modified: lutingenerator/trunk/src/test/java/org/codelutin/generator/xmi/objectmodel/XMI21ToObjectModelTest.java =================================================================== --- lutingenerator/trunk/src/test/java/org/codelutin/generator/xmi/objectmodel/XMI21ToObjectModelTest.java 2009-02-20 16:05:41 UTC (rev 455) +++ lutingenerator/trunk/src/test/java/org/codelutin/generator/xmi/objectmodel/XMI21ToObjectModelTest.java 2009-02-20 16:27:10 UTC (rev 456) @@ -77,7 +77,7 @@ Transformer transformer = factory.newTransformer(new StreamSource(xsl .openStream())); - transformer.setURIResolver(new ResourceResolver()); + transformer.setURIResolver(new ResourceResolver("xmi/2.1/")); transformer.transform(new StreamSource(xmiFile), new StreamResult( new FileOutputStream(result))); @@ -100,6 +100,25 @@ } /** + * Apply xslt on xmi model, and load it. + * + * @param modelName model to load + * + * @throws URISyntaxException + * @throws TransformerException + * @throws IOException + */ + protected ObjectModel xmiToObjectModel(String modelName) throws URISyntaxException, IOException, TransformerException { + File xmiFile = new File(Resource.getURL("xmi/2.1/" + modelName + ".uml") + .toURI()); + + File objectModelFile = transformXMI(xmiFile, modelName + ".objectmodel"); + + ObjectModel model = loadModel(objectModelFile); + return model; + } + + /** * Apply XSL stylesheet on a topcased model. * And make test on it. * @@ -108,18 +127,32 @@ * @throws TransformerException */ @Test - public void testXSL() throws URISyntaxException, IOException, + public void testXSLTestXMI21() throws URISyntaxException, IOException, TransformerException { - File xmiFile = new File(Resource.getURL("xmi/2.1/TestXMI21.uml") - .toURI()); + ObjectModel model = xmiToObjectModel("TestXMI21"); - File objectModelFile = transformXMI(xmiFile, "TestXMI21.objectmodel"); - - ObjectModel model = loadModel(objectModelFile); - Assert.assertNotNull(model); Assert.assertEquals("XMITest21", model.getName()); Assert.assertEquals(11, model.getClassifiers().size()); } + + /** + * Apply XSL stylesheet on a topcased model. + * And make test on it. + * + * @throws URISyntaxException + * @throws IOException + * @throws TransformerException + */ + @Test + public void testXSLVpod() throws URISyntaxException, IOException, + TransformerException { + + ObjectModel model = xmiToObjectModel("vpod"); + + Assert.assertNotNull(model); + Assert.assertEquals("org::sharengo::s4a::storage::http::vpod", model.getName()); + Assert.assertEquals(4, model.getClassifiers().size()); + } } Modified: lutingenerator/trunk/src/test/java/org/codelutin/generator/xmi/util/ResourceResolver.java =================================================================== --- lutingenerator/trunk/src/test/java/org/codelutin/generator/xmi/util/ResourceResolver.java 2009-02-20 16:05:41 UTC (rev 455) +++ lutingenerator/trunk/src/test/java/org/codelutin/generator/xmi/util/ResourceResolver.java 2009-02-20 16:27:10 UTC (rev 456) @@ -18,6 +18,9 @@ package org.codelutin.generator.xmi.util; import java.net.URL; +import java.util.HashMap; +import java.util.List; +import java.util.Map; import javax.xml.transform.Source; import javax.xml.transform.URIResolver; @@ -58,6 +61,22 @@ private static final Log log = LogFactory.getLog(ResourceResolver.class); /** + * Cache to not search in full classpath at each request. + */ + protected Map<String, Source> sourceCache; + + protected String base; + + public ResourceResolver() { + sourceCache = new HashMap<String, Source>(); + } + + public ResourceResolver(String base) { + this(); + this.base = base; + } + + /** * Resolve href on local resource. * * @return null if local resource not found @@ -69,41 +88,78 @@ log.debug("Resolving " + href); } + // URI : // example 1 : pathmap://UML_METAMODELS/UML.metamodel.uml // example 2 : http://argouml.org/profiles/uml14/default-java.xmi - String filename = null; - int beginIndex = href.lastIndexOf('/'); - if (beginIndex > 0) { - filename = href.substring(beginIndex + 1); - } + // relative path : + // example 3 : xxx/zzz/ttt.uml - if (filename == null || filename.length() == 0) { - return null; + Source source = null; + + // if URI + if (href.matches("[a-zA-Z]+://.+")) { + String filename = null; + int beginIndex = href.lastIndexOf('/'); + if (beginIndex > -1) { + filename = href.substring(beginIndex + 1); + } + if (filename != null && !filename.isEmpty()) { + source = findSource(filename, true); + } + } else { + source = findSource(href, false); } - return findSource(filename); + + return source; } - protected Source findSource(String filename) { + protected Source findSource(String filename, boolean isHref) { - String extension = null; - int beginIndex = filename.lastIndexOf('.'); - if (beginIndex > 0) { - extension = filename.substring(beginIndex + 1); + Source source = null; + + // test if already in cache + source = sourceCache.get(filename); + if(source != null) { + return source; } + + String resource = null; + if(isHref) { + resource = ".*/" + filename; + } + else if (base != null) { + resource = base + "/" + filename; + } else { + resource = filename; + } if (log.isDebugEnabled()) { - log.debug("findSource " + extension + "/" + filename); + log.debug("findSource " + resource); } - URL url = Resource.getURLOrNull(extension + "/" + filename); - if (url == null) { - return null; + if(isHref) { + List<URL> urls = Resource.getURLs(resource); + if (urls != null && !urls.isEmpty()) { + URL url = urls.get(0); + if (log.isDebugEnabled()) { + log.debug("found resource in " + url.toString()); + } + source = new StreamSource(url.toString()); + sourceCache.put(filename, source); + } } - if (log.isInfoEnabled()) { - log.debug("[ResourceResolver] " + url.toString()); + else { + URL url = Resource.getURLOrNull(resource); + if (url != null) { + if (log.isDebugEnabled()) { + log.debug("found resource in " + url.toString()); + } + source = new StreamSource(url.toString()); + sourceCache.put(filename, source); + } } - return new StreamSource(url.toString()); + return source; } } Modified: lutingenerator/trunk/src/test/resources/log4j.properties =================================================================== --- lutingenerator/trunk/src/test/resources/log4j.properties 2009-02-20 16:05:41 UTC (rev 455) +++ lutingenerator/trunk/src/test/resources/log4j.properties 2009-02-20 16:27:10 UTC (rev 456) @@ -7,3 +7,4 @@ #log4j.appender.stdout.layout.ConversionPattern=%%c=%c %%C=%C %%d=%d %%F=%F %%l=%l %%L=%L %%m=%m %%M=%M %%p=%p %%r=%r %%t=%t %%x=%x %%X=%X # package level log4j.logger.org.codelutin=INFO +log4j.logger.org.codelutin.generator=DEBUG \ No newline at end of file Added: lutingenerator/trunk/src/test/resources/xmi/2.1/http-storage-api/src/main/uml/conception.uml =================================================================== --- lutingenerator/trunk/src/test/resources/xmi/2.1/http-storage-api/src/main/uml/conception.uml (rev 0) +++ lutingenerator/trunk/src/test/resources/xmi/2.1/http-storage-api/src/main/uml/conception.uml 2009-02-20 16:27:10 UTC (rev 456) @@ -0,0 +1,250 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:AcceleoBusiness="http:///schemas/AcceleoBusiness/_my2ZAHXaEd2S2Y-Jnv-fiQ/2" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/2.1.0/UML" xsi:schemaLocation="http:///schemas/AcceleoBusiness/_my2ZAHXaEd2S2Y-Jnv-fiQ/2 pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"> + <uml:Model xmi:id="_qb8akM37EdqwVrslYOdUDA" name="org::sharengo::s4a::storage::http::api"> + <packagedElement xmi:type="uml:Package" xmi:id="_w8IxIM37EdqwVrslYOdUDA" name="services"> + <packagedElement xmi:type="uml:Interface" xmi:id="_hqBkGO7mEd2ObcIAlNg7-w" name="IHttpStorageSrv"> + <ownedOperation xmi:id="_4-4fwu7oEd2ObcIAlNg7-w" name="getDescription"> + <ownedParameter xmi:id="_VibUkO7wEd2ObcIAlNg7-w" name="return" type="_nstfSO7mEd2ObcIAlNg7-w" direction="return"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_Ji7kEu7tEd2ObcIAlNg7-w" name="getContract"> + <ownedParameter xmi:id="_YMmb0O7wEd2ObcIAlNg7-w" name="return" type="_8lDAGO7mEd2ObcIAlNg7-w" direction="return"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_5C-RYu7vEd2ObcIAlNg7-w" name="createFileEntry"> + <ownedParameter xmi:id="__F19UO7wEd2ObcIAlNg7-w" name="return" type="_e_H4iO7wEd2ObcIAlNg7-w" direction="return"/> + <ownedParameter xmi:id="_A9WRgO7xEd2ObcIAlNg7-w" name="fileEntry" type="_e_H4iO7wEd2ObcIAlNg7-w"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_4RBZUKs-Ed2Nmqhc73l7SA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_6rIiAu7vEd2ObcIAlNg7-w" name="deleteFileEntry"> + <ownedParameter xmi:id="_JWiKAO7xEd2ObcIAlNg7-w" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_FkgfUu7wEd2ObcIAlNg7-w" name="retrieveFileEntry"> + <ownedParameter xmi:id="_OvWBwO7xEd2ObcIAlNg7-w" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_TNwGwO7xEd2ObcIAlNg7-w" name="return" type="_e_H4iO7wEd2ObcIAlNg7-w" direction="return"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_PR4jku7wEd2ObcIAlNg7-w" name="getUploadToken"> + <ownedParameter xmi:id="_V_OI0O7xEd2ObcIAlNg7-w" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_YCgPMO7xEd2ObcIAlNg7-w" name="return" type="_VmNvyO7tEd2ObcIAlNg7-w" direction="return"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_Qe6-cu7wEd2ObcIAlNg7-w" name="getDownloadUrl"> + <ownedParameter xmi:id="_c0bGEO7xEd2ObcIAlNg7-w" name="return" direction="return"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_e3jbcO7xEd2ObcIAlNg7-w" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_4RBZUKs-Ed2Nmqhc73l7SA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_kVhLgvELEd2YNfzDP2MSAQ" name="getThumbnailHtmlCode"> + <ownedParameter xmi:id="_XTYVcPEMEd2YNfzDP2MSAQ" name="return" direction="return"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_q5BfUPEMEd2YNfzDP2MSAQ" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_4RBZUKs-Ed2Nmqhc73l7SA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_qGUsgvELEd2YNfzDP2MSAQ" name="getViewerHtmlCode"> + <ownedParameter xmi:id="_ZoGKEPEMEd2YNfzDP2MSAQ" name="return" direction="return"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_st_c4PEMEd2YNfzDP2MSAQ" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_4RBZUKs-Ed2Nmqhc73l7SA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_wAgzAvELEd2YNfzDP2MSAQ" name="getThumbnailJpegImageUrl"> + <ownedParameter xmi:id="_jnqKgPEMEd2YNfzDP2MSAQ" name="return" direction="return"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_uFT1IPEMEd2YNfzDP2MSAQ" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_4RBZUKs-Ed2Nmqhc73l7SA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_TAreUvLGEd2tb4J5u_5Mmg" name="validateUpload"> + <ownedParameter xmi:id="_YoZUwPLGEd2tb4J5u_5Mmg" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_ZK0sYPLGEd2tb4J5u_5Mmg" name="postReponseCode"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Integer"/> + </ownedParameter> + <ownedParameter xmi:id="_a2jOYPLGEd2tb4J5u_5Mmg" name="postResponseContent"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_cHLIwPLGEd2tb4J5u_5Mmg" name="return" type="_4h1OsPLKEd2CRrN6b1NfLw" direction="return"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="../../../../org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + </ownedOperation> + </packagedElement> + <profileApplication xmi:id="_MIURkPWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_MIURkfWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_tBzGgPWREdy_h6Mk-BiOHw" name="daos"> + <profileApplication xmi:id="_Mg9bEPWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_Mg-CIPWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="__PrMMPWREdy_h6Mk-BiOHw" name="dtos"> + <packagedElement xmi:type="uml:Class" xmi:id="_nstfSO7mEd2ObcIAlNg7-w" name="HttpStorageDescription"> + <ownedAttribute xmi:id="_SMBIgO7nEd2ObcIAlNg7-w" name="name"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + <ownedAttribute xmi:id="_VZ9EIu7nEd2ObcIAlNg7-w" name="type"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_8lDAGO7mEd2ObcIAlNg7-w" name="HttpStorageContract"> + <ownedAttribute xmi:id="_LpEUsu7uEd2ObcIAlNg7-w" name="maxSize"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Integer"/> + </ownedAttribute> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_GiMB2O7rEd2ObcIAlNg7-w" name="SupportedFormat"> + <ownedAttribute xmi:id="_IsLNIu7rEd2ObcIAlNg7-w" name="name"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + <ownedAttribute xmi:id="_N_Dmku7sEd2ObcIAlNg7-w" name="code"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + </packagedElement> + <packagedElement xmi:type="uml:Association" xmi:id="_ZfoGyO7sEd2ObcIAlNg7-w" name="Association1" memberEnd="_ZfoGye7sEd2ObcIAlNg7-w _ZfoGzO7sEd2ObcIAlNg7-w" navigableOwnedEnd="_ZfoGzO7sEd2ObcIAlNg7-w"> + <ownedEnd xmi:id="_ZfoGye7sEd2ObcIAlNg7-w" name="" type="_8lDAGO7mEd2ObcIAlNg7-w" association="_ZfoGyO7sEd2ObcIAlNg7-w"> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ZfoGyu7sEd2ObcIAlNg7-w" value="1"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ZfoGy-7sEd2ObcIAlNg7-w" value="1"/> + </ownedEnd> + <ownedEnd xmi:id="_ZfoGzO7sEd2ObcIAlNg7-w" name="inputFormats" type="_GiMB2O7rEd2ObcIAlNg7-w" association="_ZfoGyO7sEd2ObcIAlNg7-w"> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ZfoGze7sEd2ObcIAlNg7-w" value="*"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ZfoGzu7sEd2ObcIAlNg7-w" value="1"/> + </ownedEnd> + </packagedElement> + <packagedElement xmi:type="uml:Association" xmi:id="_6PnyGO7sEd2ObcIAlNg7-w" name="Association2" memberEnd="_6PnyGe7sEd2ObcIAlNg7-w _6PnyHO7sEd2ObcIAlNg7-w" navigableOwnedEnd="_6PnyHO7sEd2ObcIAlNg7-w"> + <ownedEnd xmi:id="_6PnyGe7sEd2ObcIAlNg7-w" name="source" type="_8lDAGO7mEd2ObcIAlNg7-w" association="_6PnyGO7sEd2ObcIAlNg7-w"> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_6PnyGu7sEd2ObcIAlNg7-w" value="1"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_6PnyG-7sEd2ObcIAlNg7-w" value="1"/> + </ownedEnd> + <ownedEnd xmi:id="_6PnyHO7sEd2ObcIAlNg7-w" name="outputFormats" type="_GiMB2O7rEd2ObcIAlNg7-w" association="_6PnyGO7sEd2ObcIAlNg7-w"> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_6PnyHe7sEd2ObcIAlNg7-w" value="*"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_6PnyHu7sEd2ObcIAlNg7-w" value="1"/> + </ownedEnd> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_VmNvyO7tEd2ObcIAlNg7-w" name="HttpTransferToken"> + <ownedAttribute xmi:id="_WvlgsO7vEd2ObcIAlNg7-w" name="url"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_KKBuaO7vEd2ObcIAlNg7-w" name="HttpParameter"> + <ownedAttribute xmi:id="_iUxbIu7vEd2ObcIAlNg7-w" name="name"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + <ownedAttribute xmi:id="_i5kxUu7vEd2ObcIAlNg7-w" name="value"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + </packagedElement> + <packagedElement xmi:type="uml:Association" xmi:id="_aoJGqu7vEd2ObcIAlNg7-w" name="Association3" memberEnd="_aoJGq-7vEd2ObcIAlNg7-w _aoJGru7vEd2ObcIAlNg7-w" navigableOwnedEnd="_aoJGru7vEd2ObcIAlNg7-w"> + <ownedEnd xmi:id="_aoJGq-7vEd2ObcIAlNg7-w" name="source" type="_VmNvyO7tEd2ObcIAlNg7-w" association="_aoJGqu7vEd2ObcIAlNg7-w"> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_aoJGrO7vEd2ObcIAlNg7-w" value="1"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_aoJGre7vEd2ObcIAlNg7-w" value="1"/> + </ownedEnd> + <ownedEnd xmi:id="_aoJGru7vEd2ObcIAlNg7-w" name="parameters" type="_KKBuaO7vEd2ObcIAlNg7-w" association="_aoJGqu7vEd2ObcIAlNg7-w"> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_aoJGr-7vEd2ObcIAlNg7-w" value="*"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_aoJGsO7vEd2ObcIAlNg7-w" value="1"/> + </ownedEnd> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_e_H4iO7wEd2ObcIAlNg7-w" name="FileEntry"> + <ownedAttribute xmi:id="_g1SI4u7wEd2ObcIAlNg7-w" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + <ownedAttribute xmi:id="_iVQG0O7wEd2ObcIAlNg7-w" name="fileName"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + <ownedAttribute xmi:id="_DmgCgPEJEd2YNfzDP2MSAQ" name="state" type="_FboYJfEJEd2YNfzDP2MSAQ"/> + <ownedAttribute xmi:id="_bfNkEvEJEd2YNfzDP2MSAQ" name="creationDate"> + <type xmi:type="uml:DataType" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_unIxYASfEd2Qys9YSCxJaQ"/> + </ownedAttribute> + </packagedElement> + <profileApplication xmi:id="_M2BsIPWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_M2CTMPWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_Cp0X0PWSEdy_h6Mk-BiOHw" name="entities"> + <profileApplication xmi:id="_NQyVgPWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_NQy8kPWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </packagedElement> + <packagedElement xmi:type="uml:Enumeration" xmi:id="_ExHpoO7nEd2ObcIAlNg7-w" name="GenericFormat"> + <ownedLiteral xmi:id="_Ie7_Mu7nEd2ObcIAlNg7-w" name="ALL_FORMAT"/> + <ownedLiteral xmi:id="_LWYGYO7nEd2ObcIAlNg7-w" name="ORIGINAL_INPUT_FORMAT"/> + </packagedElement> + <packagedElement xmi:type="uml:Enumeration" xmi:id="_FboYJfEJEd2YNfzDP2MSAQ" name="FileEntryState"> + <ownedLiteral xmi:id="_IqdEkvEJEd2YNfzDP2MSAQ" name="CREATED"/> + <ownedLiteral xmi:id="_KyM0MvEJEd2YNfzDP2MSAQ" name="UPLOADED"/> + <ownedLiteral xmi:id="_yw6sAvE1Ed2YNfzDP2MSAQ" name="UPLOAD_IN_PROGRESS"/> + </packagedElement> + <packagedElement xmi:type="uml:DataType" xmi:id="_4h1OsPLKEd2CRrN6b1NfLw" name="Boolean"/> + <profileApplication xmi:id="_LmCD4PWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_LmFHMPWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </uml:Model> + <AcceleoBusiness:Dto xmi:id="_VXIAUO7sEd2ObcIAlNg7-w" base_Class="_GiMB2O7rEd2ObcIAlNg7-w"/> + <AcceleoBusiness:Dto xmi:id="_WCyzgO7sEd2ObcIAlNg7-w" base_Class="_8lDAGO7mEd2ObcIAlNg7-w"/> + <AcceleoBusiness:Dto xmi:id="_WqbbQO7sEd2ObcIAlNg7-w" base_Class="_nstfSO7mEd2ObcIAlNg7-w"/> + <AcceleoBusiness:Dto xmi:id="_pWriAPE8Ed2IhJnrV0PXeg" base_Class="_e_H4iO7wEd2ObcIAlNg7-w"/> + <AcceleoBusiness:Dto xmi:id="_p_zXgPE8Ed2IhJnrV0PXeg" base_Class="_VmNvyO7tEd2ObcIAlNg7-w"/> + <AcceleoBusiness:Dto xmi:id="_qj3t4PE8Ed2IhJnrV0PXeg" base_Class="_KKBuaO7vEd2ObcIAlNg7-w"/> +</xmi:XMI> Added: lutingenerator/trunk/src/test/resources/xmi/2.1/org.sharengo.s4a.utils/src/main/uml/conception.uml =================================================================== --- lutingenerator/trunk/src/test/resources/xmi/2.1/org.sharengo.s4a.utils/src/main/uml/conception.uml (rev 0) +++ lutingenerator/trunk/src/test/resources/xmi/2.1/org.sharengo.s4a.utils/src/main/uml/conception.uml 2009-02-20 16:27:10 UTC (rev 456) @@ -0,0 +1,291 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:AcceleoBusiness="http:///schemas/AcceleoBusiness/_my2ZAHXaEd2S2Y-Jnv-fiQ/2" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/2.1.0/UML" xsi:schemaLocation="http:///schemas/AcceleoBusiness/_my2ZAHXaEd2S2Y-Jnv-fiQ/2 pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"> + <uml:Model xmi:id="_qb8akM37EdqwVrslYOdUDA" name="org.sharengo.s4a.utils"> + <packagedElement xmi:type="uml:Package" xmi:id="_w8IxIM37EdqwVrslYOdUDA" name="services"> + <packagedElement xmi:type="uml:Interface" xmi:id="_l25sMKEeEd2PM6_wGJR42Q" name="ICrudSrv" redefinedClassifier="_9u74UKEeEd2PM6_wGJR42Q"> + <ownedOperation xmi:id="_1TsKUKEeEd2PM6_wGJR42Q" name="create"> + <ownedParameter xmi:id="_OV-jEKEfEd2PM6_wGJR42Q" name="dto" type="_LncgQKEfEd2PM6_wGJR42Q"/> + <ownedParameter xmi:id="_QVBpsKEfEd2PM6_wGJR42Q" name="return" type="_LncgQKEfEd2PM6_wGJR42Q" direction="return"/> + <raisedException xmi:type="uml:Class" href="#_yvGYUHXJEd20DoWUDUK0Ig"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_EbIwUKtAEd2Nmqhc73l7SA"/> + </ownedOperation> + <ownedOperation xmi:id="_0ve_IKEgEd2PM6_wGJR42Q" name="find"> + <ownedParameter xmi:id="_0ve_IaEgEd2PM6_wGJR42Q" name="entityId"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_0ve_IqEgEd2PM6_wGJR42Q" name="return" type="_LncgQKEfEd2PM6_wGJR42Q" direction="return"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_EbIwUKtAEd2Nmqhc73l7SA"/> + </ownedOperation> + <ownedOperation xmi:id="_2y7dkKEgEd2PM6_wGJR42Q" name="update"> + <ownedParameter xmi:id="_2y7dkaEgEd2PM6_wGJR42Q" name="dto" type="_LncgQKEfEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_yvGYUHXJEd20DoWUDUK0Ig"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="#_EbIwUKtAEd2Nmqhc73l7SA"/> + </ownedOperation> + <ownedOperation xmi:id="_3wMXEKEgEd2PM6_wGJR42Q" name="delete"> + <ownedParameter xmi:id="_3wMXEaEgEd2PM6_wGJR42Q" name="entityId"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="#_EbIwUKtAEd2Nmqhc73l7SA"/> + </ownedOperation> + <ownedOperation xmi:id="_4Gn6EKEgEd2PM6_wGJR42Q" name="findAll"> + <ownedParameter xmi:id="_4Gn6EaEgEd2PM6_wGJR42Q" name="start"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> + </ownedParameter> + <ownedParameter xmi:id="_Mlxe0KEhEd2PM6_wGJR42Q" name="end"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> + </ownedParameter> + <ownedParameter xmi:id="_UVT9YKEhEd2PM6_wGJR42Q" name="return" type="_Qfx2QKEhEd2PM6_wGJR42Q" direction="return"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_673s0HXGEd2Ekv686xx4qA"/> + </ownedOperation> + </packagedElement> + <packagedElement xmi:type="uml:DataType" xmi:id="_9u74UKEeEd2PM6_wGJR42Q" name="AnyDto extends Serializable"/> + <packagedElement xmi:type="uml:DataType" xmi:id="_D2KVQKEfEd2PM6_wGJR42Q" name="AnyEntity extends Serializable"/> + <packagedElement xmi:type="uml:DataType" xmi:id="_LncgQKEfEd2PM6_wGJR42Q" name="AnyDto"/> + <packagedElement xmi:type="uml:DataType" xmi:id="_Mhz2wKEfEd2PM6_wGJR42Q" name="AnyEntity"/> + <packagedElement xmi:type="uml:DataType" xmi:id="_Qfx2QKEhEd2PM6_wGJR42Q" name="PagedResult<AnyDto>"/> + <packagedElement xmi:type="uml:DataType" xmi:id="_31g0gKHnEd2T0aUWLQqzuQ" name="DAO<AnyEntity>"/> + <packagedElement xmi:type="uml:DataType" xmi:id="_FZ2jQKHoEd2T0aUWLQqzuQ" name="Log"/> + <packagedElement xmi:type="uml:Package" xmi:id="_4JKaAKQ8Ed2AzttPnb4djA" name="impl"> + <packagedElement xmi:type="uml:Class" xmi:id="_6MN4EKHlEd2BIt21aAt4XQ" name="AbstractCrudSrv" clientDependency="_LED-8KHmEd2BIt21aAt4XQ" isAbstract="true" redefinedClassifier="_9u74UKEeEd2PM6_wGJR42Q _D2KVQKEfEd2PM6_wGJR42Q"> + <interfaceRealization xmi:id="_LED-8KHmEd2BIt21aAt4XQ" name="InterfaceRealization1" supplier="_l25sMKEeEd2PM6_wGJR42Q" client="_6MN4EKHlEd2BIt21aAt4XQ" contract="_l25sMKEeEd2PM6_wGJR42Q"/> + <ownedOperation xmi:id="_gUeBgKHmEd2BIt21aAt4XQ" name="create"> + <ownedParameter xmi:id="_gUeBgaHmEd2BIt21aAt4XQ" name="dto" type="_LncgQKEfEd2PM6_wGJR42Q"/> + <ownedParameter xmi:id="_gUeBgqHmEd2BIt21aAt4XQ" name="return" type="_LncgQKEfEd2PM6_wGJR42Q" direction="return"/> + <raisedException xmi:type="uml:Class" href="#_yvGYUHXJEd20DoWUDUK0Ig"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_EbIwUKtAEd2Nmqhc73l7SA"/> + </ownedOperation> + <ownedOperation xmi:id="_h-vyAKHmEd2BIt21aAt4XQ" name="find"> + <ownedParameter xmi:id="_h-vyAaHmEd2BIt21aAt4XQ" name="entityId"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_h-vyAqHmEd2BIt21aAt4XQ" name="return" type="_LncgQKEfEd2PM6_wGJR42Q" direction="return"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_EbIwUKtAEd2Nmqhc73l7SA"/> + </ownedOperation> + <ownedOperation xmi:id="_x1foQKHmEd2T0aUWLQqzuQ" name="update"> + <ownedParameter xmi:id="_x1foQaHmEd2T0aUWLQqzuQ" name="dto" type="_LncgQKEfEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_yvGYUHXJEd20DoWUDUK0Ig"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="#_EbIwUKtAEd2Nmqhc73l7SA"/> + </ownedOperation> + <ownedOperation xmi:id="_yucpgKHmEd2T0aUWLQqzuQ" name="delete"> + <ownedParameter xmi:id="_yudQkKHmEd2T0aUWLQqzuQ" name="entityId"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="#_EbIwUKtAEd2Nmqhc73l7SA"/> + </ownedOperation> + <ownedOperation xmi:id="_zTIq8KHmEd2T0aUWLQqzuQ" name="findAll"> + <ownedParameter xmi:id="_zTIq8aHmEd2T0aUWLQqzuQ" name="start"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> + </ownedParameter> + <ownedParameter xmi:id="_zTIq8qHmEd2T0aUWLQqzuQ" name="end"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> + </ownedParameter> + <ownedParameter xmi:id="_zTIq86HmEd2T0aUWLQqzuQ" name="return" type="_Qfx2QKEhEd2PM6_wGJR42Q" direction="return"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_673s0HXGEd2Ekv686xx4qA"/> + </ownedOperation> + <ownedOperation xmi:id="_-cp9EKHmEd2T0aUWLQqzuQ" name="convertToDto" visibility="protected" isAbstract="true"> + <ownedParameter xmi:id="_A0NDQKHnEd2T0aUWLQqzuQ" name="return" type="_LncgQKEfEd2PM6_wGJR42Q" direction="return"/> + <ownedParameter xmi:id="_CzdlQKHnEd2T0aUWLQqzuQ" name="entity" type="_Mhz2wKEfEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_aPi1MKHnEd2T0aUWLQqzuQ" name="convertToNewEntity" visibility="protected"> + <ownedParameter xmi:id="_cgK0AKHnEd2T0aUWLQqzuQ" name="return" type="_Mhz2wKEfEd2PM6_wGJR42Q" direction="return"/> + <ownedParameter xmi:id="_fFcNIKHnEd2T0aUWLQqzuQ" name="dto" type="_LncgQKEfEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_oCavMKHnEd2T0aUWLQqzuQ" name="convertToEntity" visibility="protected" isAbstract="true"> + <ownedParameter xmi:id="_pcoDYKHnEd2T0aUWLQqzuQ" name="dto" type="_LncgQKEfEd2PM6_wGJR42Q"/> + <ownedParameter xmi:id="_qqCRsKHnEd2T0aUWLQqzuQ" name="entity" type="_Mhz2wKEfEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_ytZrMKHnEd2T0aUWLQqzuQ" name="createEntity" visibility="protected" isAbstract="true"> + <ownedParameter xmi:id="_z4qkcKHnEd2T0aUWLQqzuQ" name="return" type="_Mhz2wKEfEd2PM6_wGJR42Q" direction="return"/> + </ownedOperation> + <ownedOperation xmi:id="_1j0esKHnEd2T0aUWLQqzuQ" name="getDao" visibility="protected" isAbstract="true"> + <ownedParameter xmi:id="_7H6ZYKHnEd2T0aUWLQqzuQ" name="return" type="_31g0gKHnEd2T0aUWLQqzuQ" direction="return"/> + </ownedOperation> + <ownedOperation xmi:id="_9IXOMKHnEd2T0aUWLQqzuQ" name="getIdFromDto" visibility="protected" isAbstract="true"> + <ownedParameter xmi:id="_-xGGkKHnEd2T0aUWLQqzuQ" name="return" direction="return"> + <type xmi:type="uml:Interface" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_hFFQ0Hg-Ed2do542yyYrFA"/> + </ownedParameter> + <ownedParameter xmi:id="_A0I8YKHoEd2T0aUWLQqzuQ" name="dto" type="_LncgQKEfEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_GpkesKHoEd2T0aUWLQqzuQ" name="getLog" visibility="protected" isAbstract="true"> + <ownedParameter xmi:id="_IvYUoKHoEd2T0aUWLQqzuQ" name="return" type="_FZ2jQKHoEd2T0aUWLQqzuQ" direction="return"/> + </ownedOperation> + <ownedOperation xmi:id="_OR2esaHoEd2T0aUWLQqzuQ" name="validateDto" visibility="protected" isAbstract="true" raisedException="_GfaEUHmfEd2HRLLd0I1WrA _YNI5EHmZEd2HRLLd0I1WrA"> + <ownedParameter xmi:id="_Ruj2IKHoEd2T0aUWLQqzuQ" name="dto" type="_LncgQKEfEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_k0lEwKHoEd2T0aUWLQqzuQ" name="checkUniqueConstraintsBeforeCreate" visibility="protected"> + <ownedParameter xmi:id="_nyF-wKHoEd2T0aUWLQqzuQ" name="dto" type="_LncgQKEfEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_yvGYUHXJEd20DoWUDUK0Ig"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + </ownedOperation> + <ownedOperation xmi:id="_u1l2sKHoEd2T0aUWLQqzuQ" name="checkUniqueConstraintsBeforeUpdate" visibility="protected"> + <ownedParameter xmi:id="_yti_sKHoEd2T0aUWLQqzuQ" name="dto" type="_LncgQKEfEd2PM6_wGJR42Q"/> + <ownedParameter xmi:id="_zgAXYKHoEd2T0aUWLQqzuQ" name="entity" type="_Mhz2wKEfEd2PM6_wGJR42Q"/> + <raisedException xmi:type="uml:Class" href="#_yvGYUHXJEd20DoWUDUK0Ig"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_j3qGYKEgEd2PM6_wGJR42Q"/> + </ownedOperation> + </packagedElement> + </packagedElement> + <profileApplication xmi:id="_MIURkPWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_MIURkfWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_tBzGgPWREdy_h6Mk-BiOHw" name="daos"> + <profileApplication xmi:id="_Mg9bEPWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_Mg-CIPWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="__PrMMPWREdy_h6Mk-BiOHw" name="dtos"> + <profileApplication xmi:id="_M2BsIPWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_M2CTMPWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_Cp0X0PWSEdy_h6Mk-BiOHw" name="entities"> + <profileApplication xmi:id="_NQyVgPWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_NQy8kPWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_bKMq8HXGEd2Ekv686xx4qA" name="exceptions"> + <packagedElement xmi:type="uml:Class" xmi:id="_c4VnwHXGEd2Ekv686xx4qA" name="GenericBusinessException" isAbstract="true"/> + <packagedElement xmi:type="uml:Class" xmi:id="_673s0HXGEd2Ekv686xx4qA" name="OutOfRangeException"> + <generalization xmi:id="_nt5gM3j0Ed2Lq_BH-5XVEg" general="_bI0twHg-Ed2lVPDSSAZWVg"/> + <ownedAttribute xmi:id="_iaKv4KtAEd2Nmqhc73l7SA" name="minValue"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + <ownedAttribute xmi:id="_jlBZcKtAEd2Nmqhc73l7SA" name="maxValue"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_yvGYUHXJEd20DoWUDUK0Ig" name="UniqueConstraintsException"> + <generalization xmi:id="_o_-zI3j0Ed2Lq_BH-5XVEg" general="_Z3cGsHj0Ed2Lq_BH-5XVEg"/> + <ownedAttribute xmi:id="_qoDjQHXKEd20DoWUDUK0Ig" name="dataName"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedAttribute> + <ownedAttribute xmi:id="_ryxC4HXKEd20DoWUDUK0Ig" name="dataValue"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedAttribute> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_bI0twHg-Ed2lVPDSSAZWVg" name="UnexpectedArgumentException" isAbstract="true"> + <generalization xmi:id="_nMrpg3j0Ed2Lq_BH-5XVEg" general="_c4VnwHXGEd2Ekv686xx4qA"/> + <ownedAttribute xmi:id="_IGOxIHg_Ed2lVPDSSAZWVg" name="parameterName"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedAttribute> + <ownedAttribute xmi:id="_Xjqvgng_Ed2lVPDSSAZWVg" name="reason"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedAttribute> + <ownedOperation xmi:id="_YPQokKvkEd2rnp-byoZYOw" name="getParameterName"> + <ownedParameter xmi:id="_dtADoKvkEd2rnp-byoZYOw" name="return" direction="return"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + </ownedOperation> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_KQqi-HjwEd2MH8DN-NMNrA" name="NoSuchEntityException"> + <generalization xmi:id="_o2bOg3j0Ed2Lq_BH-5XVEg" general="_Z3cGsHj0Ed2Lq_BH-5XVEg"/> + <ownedAttribute xmi:id="_NpxMwnjwEd2MH8DN-NMNrA" name="entityName"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedAttribute> + <ownedAttribute xmi:id="_PLYJcnjwEd2MH8DN-NMNrA" name="entityId"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedAttribute> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_Z3cGsHj0Ed2Lq_BH-5XVEg" name="CoherencyException" isAbstract="true"> + <generalization xmi:id="_nYJ5s3j0Ed2Lq_BH-5XVEg" general="_c4VnwHXGEd2Ekv686xx4qA"/> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_YNI5EHmZEd2HRLLd0I1WrA" name="NullParameterException"> + <generalization xmi:id="_N2AvUqtAEd2Nmqhc73l7SA" general="_EbIwUKtAEd2Nmqhc73l7SA"/> + <ownedOperation xmi:id="_eaeLwHmeEd2HRLLd0I1WrA" name="getParameterName"> + <ownedParameter xmi:id="_m5lGEHmeEd2HRLLd0I1WrA" name="return" direction="return"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + </ownedOperation> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_GfaEUHmfEd2HRLLd0I1WrA" name="EmptyParameterException"> + <generalization xmi:id="_OEX7c6tAEd2Nmqhc73l7SA" general="_EbIwUKtAEd2Nmqhc73l7SA"/> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_4RBZUKs-Ed2Nmqhc73l7SA" name="InvalidParameterException"> + <generalization xmi:id="_6-nA8Ks-Ed2Nmqhc73l7SA" general="_bI0twHg-Ed2lVPDSSAZWVg"/> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_EbIwUKtAEd2Nmqhc73l7SA" name="NullOrEmptyParameterException"> + <generalization xmi:id="_S6EfE6tAEd2Nmqhc73l7SA" general="_bI0twHg-Ed2lVPDSSAZWVg"/> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_vE68IOMjEd2zc-bceOzXYQ" name="ExceptionsStack"/> + <packagedElement xmi:type="uml:Association" xmi:id="_AU1kyuMkEd2zc-bceOzXYQ" name="Association1" memberEnd="_AU1ky-MkEd2zc-bceOzXYQ _AU1kzuMkEd2zc-bceOzXYQ" navigableOwnedEnd="_AU1kzuMkEd2zc-bceOzXYQ"> + <ownedEnd xmi:id="_AU1ky-MkEd2zc-bceOzXYQ" name="stack" type="_vE68IOMjEd2zc-bceOzXYQ" isUnique="false" association="_AU1kyuMkEd2zc-bceOzXYQ"> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_AU1kzOMkEd2zc-bceOzXYQ" value="1"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_AU1kzeMkEd2zc-bceOzXYQ" value="1"/> + </ownedEnd> + <ownedEnd xmi:id="_AU1kzuMkEd2zc-bceOzXYQ" name="exceptions" type="_c4VnwHXGEd2Ekv686xx4qA" isUnique="false" association="_AU1kyuMkEd2zc-bceOzXYQ"> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_AU1kz-MkEd2zc-bceOzXYQ" value="*"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_AU1k0OMkEd2zc-bceOzXYQ" value="1"/> + </ownedEnd> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_R_qg8OYHEd2ikLHnwqSzSg" name="XMLException"/> + <packagedElement xmi:type="uml:Class" xmi:id="_JUeMMOlZEd2hcOPlZHSiFw" name="FileFormatException"> + <generalization xmi:id="_NYDWYulZEd2hcOPlZHSiFw" general="_c4VnwHXGEd2Ekv686xx4qA"/> + </packagedElement> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="__k0DAHmZEd2HRLLd0I1WrA" name="validation"> + <packagedElement xmi:type="uml:Class" xmi:id="_CXHykHmaEd2HRLLd0I1WrA" name="ParameterValidator"> + <ownedOperation xmi:id="_YWpvgnmbEd2HRLLd0I1WrA" name="checkNullParameter" isStatic="true" raisedException="_YNI5EHmZEd2HRLLd0I1WrA"> + <ownedParameter xmi:id="_o27D4HmbEd2HRLLd0I1WrA" name="o"> + <type xmi:type="uml:DataType" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_xqoXkASfEd2Qys9YSCxJaQ"/> + </ownedParameter> + <ownedParameter xmi:id="_5tKO8HmgEd2HRLLd0I1WrA" name="parameterName"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + </ownedOperation> + <ownedOperation xmi:id="_yXGkMHmcEd2HRLLd0I1WrA" name="checkEmptyString" isStatic="true" raisedException="_YNI5EHmZEd2HRLLd0I1WrA _GfaEUHmfEd2HRLLd0I1WrA"> + <ownedParameter xmi:id="_zwq_MHmcEd2HRLLd0I1WrA" name="s"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_86WjsHmgEd2HRLLd0I1WrA" name="parameterName"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + </ownedOperation> + <ownedOperation xmi:id="_--Be8H2uEd22ZfAQrfk_WQ" name="checkEmptyCollection" isStatic="true" raisedException="_YNI5EHmZEd2HRLLd0I1WrA _GfaEUHmfEd2HRLLd0I1WrA"> + <ownedParameter xmi:id="_DJ968H2vEd22ZfAQrfk_WQ" name="c"> + <type xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception-helper.uml#_cYCF4H2vEd22ZfAQrfk_WQ"/> + </ownedParameter> + <ownedParameter xmi:id="_F4q84H2vEd22ZfAQrfk_WQ" name="parameterName"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + </ownedOperation> + </packagedElement> + </packagedElement> + <profileApplication xmi:id="_LmCD4PWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_LmFHMPWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </uml:Model> + <AcceleoBusiness:BusinessException xmi:id="_mYV-YHXGEd2Ekv686xx4qA" base_Class="_c4VnwHXGEd2Ekv686xx4qA"/> + <AcceleoBusiness:BusinessException xmi:id="_0riGIHm2Ed2HRLLd0I1WrA"/> + <AcceleoBusiness:BusinessException xmi:id="_-ZM-gOMjEd2zc-bceOzXYQ" base_Class="_vE68IOMjEd2zc-bceOzXYQ"/> + <AcceleoBusiness:BusinessException xmi:id="_Tq23cOYHEd2ikLHnwqSzSg" base_Class="_R_qg8OYHEd2ikLHnwqSzSg"/> +</xmi:XMI> Added: lutingenerator/trunk/src/test/resources/xmi/2.1/vpod.uml =================================================================== --- lutingenerator/trunk/src/test/resources/xmi/2.1/vpod.uml (rev 0) +++ lutingenerator/trunk/src/test/resources/xmi/2.1/vpod.uml 2009-02-20 16:27:10 UTC (rev 456) @@ -0,0 +1,227 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:AcceleoBusiness="http:///schemas/AcceleoBusiness/_my2ZAHXaEd2S2Y-Jnv-fiQ/2" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/2.1.0/UML" xsi:schemaLocation="http:///schemas/AcceleoBusiness/_my2ZAHXaEd2S2Y-Jnv-fiQ/2 pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"> + <uml:Model xmi:id="_qb8akM37EdqwVrslYOdUDA" name="org::sharengo::s4a::storage::http::vpod"> + <packagedElement xmi:type="uml:Package" xmi:id="_w8IxIM37EdqwVrslYOdUDA" name="services"> + <packagedElement xmi:type="uml:Class" xmi:id="_lfUrOPEWEd2YNfzDP2MSAQ" name="VpodHttpStorageSrv" clientDependency="_KgAvo_EXEd2YNfzDP2MSAQ _T9NPk_EnEd2YNfzDP2MSAQ _u2XgBPFLEd2IhJnrV0PXeg"> + <interfaceRealization xmi:id="_KgAvo_EXEd2YNfzDP2MSAQ" name="InterfaceRealization1" client="_lfUrOPEWEd2YNfzDP2MSAQ"> + <supplier xmi:type="uml:Interface" href="http-storage-api/src/main/uml/conception.uml#_hqBkGO7mEd2ObcIAlNg7-w"/> + <contract href="http-storage-api/src/main/uml/conception.uml#_hqBkGO7mEd2ObcIAlNg7-w"/> + </interfaceRealization> + <ownedOperation xmi:id="_2inkYvEnEd2YNfzDP2MSAQ" name="getDescription"> + <ownedParameter xmi:id="_0l9YgPEpEd2YNfzDP2MSAQ" name="return" direction="return"> + <type xmi:type="uml:Class" href="http-storage-api/src/main/uml/conception.uml#_nstfSO7mEd2ObcIAlNg7-w"/> + </ownedParameter> + </ownedOperation> + <ownedOperation xmi:id="_30k7gvEnEd2YNfzDP2MSAQ" name="getContract"> + <ownedParameter xmi:id="_2xusgPEpEd2YNfzDP2MSAQ" name="return" direction="return"> + <type xmi:type="uml:Class" href="http-storage-api/src/main/uml/conception.uml#_8lDAGO7mEd2ObcIAlNg7-w"/> + </ownedParameter> + </ownedOperation> + <ownedOperation xmi:id="_46dlgvEnEd2YNfzDP2MSAQ" name="createFileEntry"> + <ownedParameter xmi:id="_VI7mYPEoEd2YNfzDP2MSAQ" name="fileEntry"> + <type xmi:type="uml:Class" href="http-storage-api/src/main/uml/conception.uml#_e_H4iO7wEd2ObcIAlNg7-w"/> + </ownedParameter> + <ownedParameter xmi:id="_W6VSkPEoEd2YNfzDP2MSAQ" name="return" direction="return"> + <type xmi:type="uml:Class" href="http-storage-api/src/main/uml/conception.uml#_e_H4iO7wEd2ObcIAlNg7-w"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_4RBZUKs-Ed2Nmqhc73l7SA"/> + </ownedOperation> + <ownedOperation xmi:id="_6Cb6MvEnEd2YNfzDP2MSAQ" name="deleteFileEntry"> + <ownedParameter xmi:id="_a7rBEPEoEd2YNfzDP2MSAQ" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + </ownedOperation> + <ownedOperation xmi:id="_7PeVEvEnEd2YNfzDP2MSAQ" name="retrieveFileEntry"> + <ownedParameter xmi:id="_dLUvgPEoEd2YNfzDP2MSAQ" name="return" direction="return"> + <type xmi:type="uml:Class" href="http-storage-api/src/main/uml/conception.uml#_e_H4iO7wEd2ObcIAlNg7-w"/> + </ownedParameter> + <ownedParameter xmi:id="_fpkTkPEoEd2YNfzDP2MSAQ" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + </ownedOperation> + <ownedOperation xmi:id="_-l6FYvEnEd2YNfzDP2MSAQ" name="getUploadToken"> + <ownedParameter xmi:id="_j5hF0PEoEd2YNfzDP2MSAQ" name="return" direction="return"> + <type xmi:type="uml:Class" href="http-storage-api/src/main/uml/conception.uml#_VmNvyO7tEd2ObcIAlNg7-w"/> + </ownedParameter> + <ownedParameter xmi:id="_nescwPEoEd2YNfzDP2MSAQ" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + </ownedOperation> + <ownedOperation xmi:id="__tR9IvEnEd2YNfzDP2MSAQ" name="getDownloadUrl"> + <ownedParameter xmi:id="_lpICQPEoEd2YNfzDP2MSAQ" name="return" direction="return"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_pT98UPEoEd2YNfzDP2MSAQ" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_4RBZUKs-Ed2Nmqhc73l7SA"/> + </ownedOperation> + <ownedOperation xmi:id="_JGiykvEoEd2YNfzDP2MSAQ" name="getThumbnailHtmlCode"> + <ownedParameter xmi:id="_rwlIsPEoEd2YNfzDP2MSAQ" name="return" direction="return"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_uhTj4PEoEd2YNfzDP2MSAQ" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_4RBZUKs-Ed2Nmqhc73l7SA"/> + </ownedOperation> + <ownedOperation xmi:id="_Ph0M4vEoEd2YNfzDP2MSAQ" name="getViewerHtmlCode"> + <ownedParameter xmi:id="_v-vLMPEoEd2YNfzDP2MSAQ" name="return" direction="return"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_ykcCIPEoEd2YNfzDP2MSAQ" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_4RBZUKs-Ed2Nmqhc73l7SA"/> + </ownedOperation> + <ownedOperation xmi:id="_Q41qMvEoEd2YNfzDP2MSAQ" name="getThumbnailJpegImageUrl"> + <ownedParameter xmi:id="_xP87cPEoEd2YNfzDP2MSAQ" name="return" direction="return"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_0Qn3IPEoEd2YNfzDP2MSAQ" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_4RBZUKs-Ed2Nmqhc73l7SA"/> + </ownedOperation> + <ownedOperation xmi:id="_xQ6YEvLFEd2tb4J5u_5Mmg" name="validateUpload"> + <ownedParameter xmi:id="_m7XOoPLHEd2tb4J5u_5Mmg" name="return" type="__l5j0PLJEd2tb4J5u_5Mmg" direction="return"/> + <ownedParameter xmi:id="_sOqUQPLHEd2tb4J5u_5Mmg" name="id"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <ownedParameter xmi:id="_sUnyUPLHEd2tb4J5u_5Mmg" name="postResponseCode"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Integer"/> + </ownedParameter> + <ownedParameter xmi:id="_salQYPLHEd2tb4J5u_5Mmg" name="postResponseContent"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_YNI5EHmZEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_GfaEUHmfEd2HRLLd0I1WrA"/> + <raisedException xmi:type="uml:Class" href="org.sharengo.s4a.utils/src/main/uml/conception.uml#_KQqi-HjwEd2MH8DN-NMNrA"/> + </ownedOperation> + </packagedElement> + <packagedElement xmi:type="uml:Dependency" xmi:id="_T9NPk_EnEd2YNfzDP2MSAQ" name="Dependency1" supplier="_O9ud2PEnEd2YNfzDP2MSAQ" client="_lfUrOPEWEd2YNfzDP2MSAQ"/> + <profileApplication xmi:id="_MIURkPWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_MIURkfWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_tBzGgPWREdy_h6Mk-BiOHw" name="daos"> + <packagedElement xmi:type="uml:Class" xmi:id="_O9ud2PEnEd2YNfzDP2MSAQ" name="VpodMappingDao" clientDependency="_UfePI_EnEd2YNfzDP2MSAQ"> + <ownedOperation xmi:id="_nMbbgPE9Ed2IhJnrV0PXeg" name="findByVpodId"> + <ownedParameter xmi:id="_sN2G8PE9Ed2IhJnrV0PXeg" name="return" type="_rbNnmPEmEd2YNfzDP2MSAQ" direction="return"/> + <ownedParameter xmi:id="_uPVdkPE9Ed2IhJnrV0PXeg" name="vpodId"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + </ownedOperation> + <ownedOperation xmi:id="_Daw8YvKlEd2tb4J5u_5Mmg" name="findByStorageId"> + <ownedParameter xmi:id="_LP5FkPKlEd2tb4J5u_5Mmg" name="return" type="_rbNnmPEmEd2YNfzDP2MSAQ" direction="return"/> + <ownedParameter xmi:id="_MrPCMPKlEd2tb4J5u_5Mmg" name="storageId"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedParameter> + </ownedOperation> + </packagedElement> + <packagedElement xmi:type="uml:Dependency" xmi:id="_UfePI_EnEd2YNfzDP2MSAQ" name="Dependency1" supplier="_rbNnmPEmEd2YNfzDP2MSAQ" client="_O9ud2PEnEd2YNfzDP2MSAQ"/> + <profileApplication xmi:id="_Mg9bEPWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_Mg-CIPWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="__PrMMPWREdy_h6Mk-BiOHw" name="dtos"> + <packagedElement xmi:type="uml:Class" xmi:id="_PZiDWPEXEd2YNfzDP2MSAQ" name="VpodFileEntry"> + <generalization xmi:id="_XS1h4_EXEd2YNfzDP2MSAQ"> + <general xmi:type="uml:Class" href="http-storage-api/src/main/uml/conception.uml#_e_H4iO7wEd2ObcIAlNg7-w"/> + </generalization> + <ownedAttribute xmi:id="_s7YNQvE7Ed2YNfzDP2MSAQ" name="vpodId"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + <ownedAttribute xmi:id="_uuWXsPKkEd2tb4J5u_5Mmg" name="storageId"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + </packagedElement> + <profileApplication xmi:id="_M2BsIPWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_M2CTMPWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_Cp0X0PWSEdy_h6Mk-BiOHw" name="entities"> + <packagedElement xmi:type="uml:Class" xmi:id="_rbNnmPEmEd2YNfzDP2MSAQ" name="VpodMapping"> + <ownedAttribute xmi:id="_w-wIovEmEd2YNfzDP2MSAQ" name="vpodId"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + <ownedAttribute xmi:id="__5BIgvEmEd2YNfzDP2MSAQ" name="filename"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + <ownedAttribute xmi:id="_F4uoMPEnEd2YNfzDP2MSAQ" name="state"> + <type xmi:type="uml:Enumeration" href="http-storage-api/src/main/uml/conception.uml#_FboYJfEJEd2YNfzDP2MSAQ"/> + </ownedAttribute> + <ownedAttribute xmi:id="_Gm6j4vEnEd2YNfzDP2MSAQ" name="creationDate"> + <type xmi:type="uml:DataType" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_unIxYASfEd2Qys9YSCxJaQ"/> + </ownedAttribute> + <ownedAttribute xmi:id="_7_3REvKkEd2tb4J5u_5Mmg" name="storageId"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_METAMODELS/UML.metamodel.uml#String"/> + </ownedAttribute> + </packagedElement> + <profileApplication xmi:id="_NQyVgPWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_NQy8kPWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </packagedElement> + <packagedElement xmi:type="uml:Dependency" xmi:id="_u2XgBPFLEd2IhJnrV0PXeg" name="Dependency1" client="_lfUrOPEWEd2YNfzDP2MSAQ"> + <supplier xmi:type="uml:Class" href="../../../../vpod-api/src/main/uml/conception.uml#_-qf24LCvEd2UyNhL8QTcHA"/> + </packagedElement> + <packagedElement xmi:type="uml:DataType" xmi:id="__l5j0PLJEd2tb4J5u_5Mmg" name="Boolean"/> + <profileApplication xmi:id="_LmCD4PWdEdyp25RO5nzQ4A"> + <eAnnotations xmi:id="_LmFHMPWdEdyp25RO5nzQ4A" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_81g14fWcEdyuYMHNZCqWBQ"/> + </eAnnotations> + <appliedProfile href="pathmap://ACCELEO_PROFILES/Acceleo.Business.profile.uml#_JX9fQPWcEdyuYMHNZCqWBQ"/> + </profileApplication> + </uml:Model> + <AcceleoBusiness:Service xmi:id="_oE4YMPEWEd2YNfzDP2MSAQ" base_Class="_lfUrOPEWEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Dto xmi:id="_Ries0PEXEd2YNfzDP2MSAQ" base_Class="_PZiDWPEXEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Entity xmi:id="_QuOLEPEnEd2YNfzDP2MSAQ" base_Class="_rbNnmPEmEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Dao xmi:id="_RwrtoPEnEd2YNfzDP2MSAQ" base_Class="_O9ud2PEnEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Remote xmi:id="_SRsEwPEuEd2YNfzDP2MSAQ" base_Operation="_2inkYvEnEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Remote xmi:id="_Sw-o0PEuEd2YNfzDP2MSAQ" base_Operation="_30k7gvEnEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Remote xmi:id="_TWOq8PEuEd2YNfzDP2MSAQ" base_Operation="_46dlgvEnEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Remote xmi:id="_T4zMgPEuEd2YNfzDP2MSAQ" base_Operation="_6Cb6MvEnEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Remote xmi:id="_UbOkIPEuEd2YNfzDP2MSAQ" base_Operation="_7PeVEvEnEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Remote xmi:id="_VFPxgPEuEd2YNfzDP2MSAQ" base_Operation="_-l6FYvEnEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Remote xmi:id="_VgqiMPEuEd2YNfzDP2MSAQ" base_Operation="__tR9IvEnEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Remote xmi:id="_V-UHgPEuEd2YNfzDP2MSAQ" base_Operation="_JGiykvEoEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Remote xmi:id="_WhLkAPEuEd2YNfzDP2MSAQ" base_Operation="_Ph0M4vEoEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Remote xmi:id="_XCtjwPEuEd2YNfzDP2MSAQ" base_Operation="_Q41qMvEoEd2YNfzDP2MSAQ"/> + <AcceleoBusiness:Remote xmi:id="_Bxjf4PLGEd2tb4J5u_5Mmg" base_Operation="_xQ6YEvLFEd2tb4J5u_5Mmg"/> + <AcceleoBusiness:Remote xmi:id="_CP8sEPLGEd2tb4J5u_5Mmg"/> +</xmi:XMI>