Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.0M5
    • Fix Version/s: 3.0M5, 3.0
    • Component/s: Core Library
    • Labels:
      None

      Description

      Implement the possibility for an objEntity to be abstract. These means that the entity class generated by the template will be abstract.

      1. Add atttribute isAbstract within <obj-entity ...> in the Cayenne data map.
      2. Add checkbox to the modeler "[ ] abstract class"
      3. void setIsAbstract(boolean) and boolean getIsAbstract() added to ObjEntity.
      3. change template generation to add 'abstract' keyword

      Other changes (such as throwing runtime exception when querying abstract entity with no concrete subclasses) could probably wait until later since they need to be implemented as part of inheritance.

      1. ab.diff
        8 kB
        Marcin Skladaniec
      2. abstract-complete.diff
        12 kB
        Marcin Skladaniec
      3. abstract-obj-entity.diff
        11 kB
        Marcin Skladaniec

        Issue Links

          Activity

          Transition Time In Source Status Execution Times Last Executer Last Execution Date
          Open Open Closed Closed
          440d 13h 43m 1 Ari Maniatis 13/Aug/08 00:43
          Pavel Dyadych made changes -
          Link This issue is related to CAY-1711 [ CAY-1711 ]
          Ari Maniatis made changes -
          Issue Type New Feature [ 2 ] Improvement [ 4 ]
          Ari Maniatis made changes -
          Fix Version/s 3.0-final [ 12313760 ]
          Ari Maniatis made changes -
          Workflow jira [ 12456843 ] Cayenne workflow [ 12486605 ]
          Henri Yandell made changes -
          Project Import Sat Mar 21 00:51:04 PDT 2009 [ 1237621864637 ]
          Ari Maniatis made changes -
          Fix Version/s 3.0M5 [ 10120 ]
          Fix Version/s 3.0 [ 10091 ]
          Ari Maniatis made changes -
          Affects Version/s 3.0M5 [ 10120 ]
          Affects Version/s 3.0 [ 10091 ]
          Ari Maniatis made changes -
          Resolution Fixed [ 1 ]
          Status Open [ 1 ] Closed [ 6 ]
          Hide
          Ari Maniatis added a comment -

          This is now committed with some modifications.

          Show
          Ari Maniatis added a comment - This is now committed with some modifications.
          Marcin Skladaniec made changes -
          Attachment abstract-obj-entity.diff [ 10697 ]
          Hide
          Marcin Skladaniec added a comment -

          After a consultation with Andrus another small update to the patch: the attribute is stored in XML as "abstract" rather than "isAbstract" to archive constant naming pattern

          Show
          Marcin Skladaniec added a comment - After a consultation with Andrus another small update to the patch: the attribute is stored in XML as "abstract" rather than "isAbstract" to archive constant naming pattern
          Marcin Skladaniec made changes -
          Attachment abstract-complete.diff [ 10696 ]
          Hide
          Marcin Skladaniec added a comment -

          ugh, forgot the vm templates. this is the right patch

          Show
          Marcin Skladaniec added a comment - ugh, forgot the vm templates. this is the right patch
          Hide
          Marcin Skladaniec added a comment -

          I have done this part, proceeding to CAY-795

          Show
          Marcin Skladaniec added a comment - I have done this part, proceeding to CAY-795
          Marcin Skladaniec made changes -
          Attachment ab.diff [ 10695 ]
          Hide
          Marcin Skladaniec added a comment -

          attaching patch which does all the described.

          Show
          Marcin Skladaniec added a comment - attaching patch which does all the described.
          Ari Maniatis made changes -
          Component/s Cayenne Core Library [ 10000 ]
          Ari Maniatis made changes -
          Field Original Value New Value
          Link This issue is referenced by CAY-795 [ CAY-795 ]
          Ari Maniatis created issue -

            People

            • Assignee:
              Ari Maniatis
              Reporter:
              Ari Maniatis
            • Votes:
              2 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development