Uploaded image for project: 'Cayenne'
  1. Cayenne
  2. CAY-1438

refactoring EntityInheritanceTree lookups

    XMLWordPrintableJSON

Details

    • Task
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 3.1M1
    • 3.1M1
    • Core Library
    • None

    Description

      Related to CAY-1090 vertical inheritance work, need to make EntityInheritanceTree object easier to use. As a part of that will change EntityResolver.lookupInheritanceTree() logic that would return NULL if a class has no subclasses. Instead this method will return non-null instance for any existing entity while a check for subclasses will be performed by the callers.

      After doing some local refactoring based on this change, I foudn that it actually saved some if/else code, and resulted in a cleaner inheritance handling in general. One possible further improvement will be to split EntityInheritanceTree functions into "pure metadata" and "behavior" and assign the later to the ClassDescriptor (in the same way we split ObjEntity and ClassDescriptor responsibilities).

      Attachments

        Issue Links

          Activity

            People

              andrus Andrus Adamchik
              andrus Andrus Adamchik
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: