You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Kelvin Goodson (JIRA)" <tu...@ws.apache.org> on 2007/02/21 13:13:05 UTC

[jira] Created: (TUSCANY-1129) Multiple Inheritance Broken In Generator Templates

Multiple Inheritance Broken In Generator Templates
--------------------------------------------------

                 Key: TUSCANY-1129
                 URL: https://issues.apache.org/jira/browse/TUSCANY-1129
             Project: Tuscany
          Issue Type: Bug
          Components: Java SDO Tools
    Affects Versions: Java-SDO-Mx
            Reporter: Kelvin Goodson


TUSCANY-521 exposed a consistent set of integer indices to API visible Properties,  and a mapping to the internal EMF indices which had previously been exposed. Some effort was made to preserve the capacity to generate classes that exhibit multiple inheritance,  but 1) it was not clear that multiple inheritance was unbroken,  and 2) there was no way to describe multiple inheritance as input to the generator.  The work that went into the TUSCANY-521 effort to permit generation of SDO classes that exhibit multiple inheritance will be attached here. 

Completion of this JIRA will require modification of the SDOClass.javajet file to ensure that the internal and external indices are used appropriately when the code path through the generator exercises the multiple inheritance features.  Note that this code path also currently exhibits elements of the old generator pattern where EMF code appeared directly in the generated classes. 

Note also that the multiple inheritance case may cause discontinuous use of index constant values within a given class,  hence the reason why the generated internalConverIndex() method  is implemented with a switch statement rather than arithmetic. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


[jira] Updated: (TUSCANY-1129) Multiple Inheritance Broken In Generator Templates

Posted by "Kelvin Goodson (JIRA)" <tu...@ws.apache.org>.
     [ https://issues.apache.org/jira/browse/TUSCANY-1129?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kelvin Goodson updated TUSCANY-1129:
------------------------------------

        Fix Version/s: Java-SDO-Mx
    Affects Version/s:     (was: Java-SDO-Mx)
                       Java-SDO-M3

> Multiple Inheritance Broken In Generator Templates
> --------------------------------------------------
>
>                 Key: TUSCANY-1129
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-1129
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SDO Tools
>    Affects Versions: Java-SDO-M3
>            Reporter: Kelvin Goodson
>            Priority: Minor
>             Fix For: Java-SDO-Mx
>
>         Attachments: GenMultipleInheritanceTestClasses.java, MemoryModel2JavaGenerator.java
>
>
> TUSCANY-521 exposed a consistent set of integer indices to API visible Properties,  and a mapping to the internal EMF indices which had previously been exposed. Some effort was made to preserve the capacity to generate classes that exhibit multiple inheritance,  but 1) it was not clear that multiple inheritance was unbroken,  and 2) there was no way to describe multiple inheritance as input to the generator.  The work that went into the TUSCANY-521 effort to permit generation of SDO classes that exhibit multiple inheritance will be attached here. 
> Completion of this JIRA will require modification of the SDOClass.javajet file to ensure that the internal and external indices are used appropriately when the code path through the generator exercises the multiple inheritance features.  Note that this code path also currently exhibits elements of the old generator pattern where EMF code appeared directly in the generated classes. 
> Note also that the multiple inheritance case may cause discontinuous use of index constant values within a given class,  hence the reason why the generated internalConverIndex() method  is implemented with a switch statement rather than arithmetic. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


[jira] Updated: (TUSCANY-1129) Multiple Inheritance Broken In Generator Templates

Posted by "Kelvin Goodson (JIRA)" <tu...@ws.apache.org>.
     [ https://issues.apache.org/jira/browse/TUSCANY-1129?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kelvin Goodson updated TUSCANY-1129:
------------------------------------

    Attachment: MemoryModel2JavaGenerator.java

A prototype generator for creating SDO classes from an in memory model of the type system

> Multiple Inheritance Broken In Generator Templates
> --------------------------------------------------
>
>                 Key: TUSCANY-1129
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-1129
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SDO Tools
>    Affects Versions: Java-SDO-Mx
>            Reporter: Kelvin Goodson
>         Attachments: MemoryModel2JavaGenerator.java
>
>
> TUSCANY-521 exposed a consistent set of integer indices to API visible Properties,  and a mapping to the internal EMF indices which had previously been exposed. Some effort was made to preserve the capacity to generate classes that exhibit multiple inheritance,  but 1) it was not clear that multiple inheritance was unbroken,  and 2) there was no way to describe multiple inheritance as input to the generator.  The work that went into the TUSCANY-521 effort to permit generation of SDO classes that exhibit multiple inheritance will be attached here. 
> Completion of this JIRA will require modification of the SDOClass.javajet file to ensure that the internal and external indices are used appropriately when the code path through the generator exercises the multiple inheritance features.  Note that this code path also currently exhibits elements of the old generator pattern where EMF code appeared directly in the generated classes. 
> Note also that the multiple inheritance case may cause discontinuous use of index constant values within a given class,  hence the reason why the generated internalConverIndex() method  is implemented with a switch statement rather than arithmetic. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


[jira] Updated: (TUSCANY-1129) Multiple Inheritance Broken In Generator Templates

Posted by "Kelvin Goodson (JIRA)" <tu...@ws.apache.org>.
     [ https://issues.apache.org/jira/browse/TUSCANY-1129?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kelvin Goodson updated TUSCANY-1129:
------------------------------------

    Priority: Minor  (was: Major)

Changing severity to minor as I am not aware of requirements to generate SDO classes which exhibit multiple inheritance.

> Multiple Inheritance Broken In Generator Templates
> --------------------------------------------------
>
>                 Key: TUSCANY-1129
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-1129
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SDO Tools
>    Affects Versions: Java-SDO-Mx
>            Reporter: Kelvin Goodson
>            Priority: Minor
>         Attachments: GenMultipleInheritanceTestClasses.java, MemoryModel2JavaGenerator.java
>
>
> TUSCANY-521 exposed a consistent set of integer indices to API visible Properties,  and a mapping to the internal EMF indices which had previously been exposed. Some effort was made to preserve the capacity to generate classes that exhibit multiple inheritance,  but 1) it was not clear that multiple inheritance was unbroken,  and 2) there was no way to describe multiple inheritance as input to the generator.  The work that went into the TUSCANY-521 effort to permit generation of SDO classes that exhibit multiple inheritance will be attached here. 
> Completion of this JIRA will require modification of the SDOClass.javajet file to ensure that the internal and external indices are used appropriately when the code path through the generator exercises the multiple inheritance features.  Note that this code path also currently exhibits elements of the old generator pattern where EMF code appeared directly in the generated classes. 
> Note also that the multiple inheritance case may cause discontinuous use of index constant values within a given class,  hence the reason why the generated internalConverIndex() method  is implemented with a switch statement rather than arithmetic. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


[jira] Commented: (TUSCANY-1129) Multiple Inheritance Broken In Generator Templates

Posted by "Kelvin Goodson (JIRA)" <tu...@ws.apache.org>.
    [ https://issues.apache.org/jira/browse/TUSCANY-1129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12475046 ] 

Kelvin Goodson commented on TUSCANY-1129:
-----------------------------------------

Capturing a detail here:   the javajet file for factories currently assumes an xsd input.  When prototyping the MemoryModelToJavaGenerator I put guards around the createXSDMetaData call and definition.  The guard was
      <% if(genPackage.getEcorePackage().getEAnnotation(ExtendedMetaData.ANNOTATION_URI) != null) { // if there are XSD annotations%>

but this isn't a good guard in that it also blocks the call to and creation of this method for some if not all xsd generations.  So a change along these lines will most likely be needed when attempting to use the memory model generator in the future.

> Multiple Inheritance Broken In Generator Templates
> --------------------------------------------------
>
>                 Key: TUSCANY-1129
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-1129
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SDO Tools
>    Affects Versions: Java-SDO-Mx
>            Reporter: Kelvin Goodson
>            Priority: Minor
>         Attachments: GenMultipleInheritanceTestClasses.java, MemoryModel2JavaGenerator.java
>
>
> TUSCANY-521 exposed a consistent set of integer indices to API visible Properties,  and a mapping to the internal EMF indices which had previously been exposed. Some effort was made to preserve the capacity to generate classes that exhibit multiple inheritance,  but 1) it was not clear that multiple inheritance was unbroken,  and 2) there was no way to describe multiple inheritance as input to the generator.  The work that went into the TUSCANY-521 effort to permit generation of SDO classes that exhibit multiple inheritance will be attached here. 
> Completion of this JIRA will require modification of the SDOClass.javajet file to ensure that the internal and external indices are used appropriately when the code path through the generator exercises the multiple inheritance features.  Note that this code path also currently exhibits elements of the old generator pattern where EMF code appeared directly in the generated classes. 
> Note also that the multiple inheritance case may cause discontinuous use of index constant values within a given class,  hence the reason why the generated internalConverIndex() method  is implemented with a switch statement rather than arithmetic. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


[jira] Updated: (TUSCANY-1129) Multiple Inheritance Broken In Generator Templates

Posted by "Kelvin Goodson (JIRA)" <tu...@ws.apache.org>.
     [ https://issues.apache.org/jira/browse/TUSCANY-1129?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kelvin Goodson updated TUSCANY-1129:
------------------------------------

    Attachment: GenMultipleInheritanceTestClasses.java

Code to exercise the prototype memory model generator and generate some test classes which exhibit multiple inheritance (currently the generated classes fail to compile due to the EMF issues mentioned in the JIRA description, and will fail to execute properly until the index mapping and any other as yet undiscovered issues with multiple inheritance generation are fixed)

> Multiple Inheritance Broken In Generator Templates
> --------------------------------------------------
>
>                 Key: TUSCANY-1129
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-1129
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SDO Tools
>    Affects Versions: Java-SDO-Mx
>            Reporter: Kelvin Goodson
>         Attachments: GenMultipleInheritanceTestClasses.java, MemoryModel2JavaGenerator.java
>
>
> TUSCANY-521 exposed a consistent set of integer indices to API visible Properties,  and a mapping to the internal EMF indices which had previously been exposed. Some effort was made to preserve the capacity to generate classes that exhibit multiple inheritance,  but 1) it was not clear that multiple inheritance was unbroken,  and 2) there was no way to describe multiple inheritance as input to the generator.  The work that went into the TUSCANY-521 effort to permit generation of SDO classes that exhibit multiple inheritance will be attached here. 
> Completion of this JIRA will require modification of the SDOClass.javajet file to ensure that the internal and external indices are used appropriately when the code path through the generator exercises the multiple inheritance features.  Note that this code path also currently exhibits elements of the old generator pattern where EMF code appeared directly in the generated classes. 
> Note also that the multiple inheritance case may cause discontinuous use of index constant values within a given class,  hence the reason why the generated internalConverIndex() method  is implemented with a switch statement rather than arithmetic. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org