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

          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.
          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
          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
          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.

            People

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

              Dates

              • Created:
                Updated:
                Resolved:

                Development