Uploaded image for project: 'Kuali Rice Development'
  1. Kuali Rice Development
  2. KULRICE-3716

Create a "Business Object Observer" framework

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 1.0.1, KFS Release 3.0
    • Fix Version/s: Backlog
    • Component/s: Development
    • Labels:
    • Rice Module:
      KRAD
    • Application Requirement:
      Rice

      Description

      This is related to thoughts on performance, specifically the role type services.

      Performance could be improved if the type services cached information they gather when resolving roles. (Such as org parent/child relationships or fiscal officer user IDs.) Unfortunately, since the data can change, it's not always practical.

      But, if there was a standard way to notify interested objects that a business object had just been saved, they type services could purge their cache entries appropriately.

      So, what about a "BusinessObjectObserver" class. It would have a two methods:
      List<Class<? extends BusinessObject>> getInterestedBusinessObjectClasses()
      void businessObjectSaved( BusinessObject bo )

      Upon service startup, the BusinessObjectService would perform a "getBeansOfType" on the spring context and register all of them in a local HashMap<Class<? extends BusinessObject>,List<BusinessObjectObserver>> which it would use in the BO service's save methods.

        Attachments

          Activity

          jkeller Jonathan Keller created issue -
          ewestfal Eric Westfall made changes -
          Field Original Value New Value
          Fix Version/s 1.0.3? [ 16014 ]
          jkneal Jerry Neal (Inactive) made changes -
          Fix Version/s KRAD [ 16085 ]
          Fix Version/s 1.0.3? [ 16014 ]
          jcoltrin Jessica Coltrin (Inactive) made changes -
          Rice Module [KNS] [KRAD]
          jcoltrin Jessica Coltrin (Inactive) made changes -
          Fix Version/s 1.1? [ 15811 ]
          Fix Version/s KRAD [ 16085 ]
          jkneal Jerry Neal (Inactive) made changes -
          Rice Lead jkneal
          spatterson Shem Patterson (Inactive) made changes -
          Workflow custom [ 77388 ] Copy of custom for rice [ 206769 ]
          spatterson Shem Patterson (Inactive) made changes -
          Workflow Copy of custom for rice [ 206769 ] custom [ 216517 ]
          spatterson Shem Patterson (Inactive) made changes -
          Workflow custom [ 216517 ] Rice Workflow [ 226265 ]
          kbtaylor Kristina Taylor (Inactive) made changes -
          Fix Version/s Middleware Backlog [ 17860 ]
          Fix Version/s Backlog [ 15811 ]
          kbtaylor Kristina Taylor (Inactive) made changes -
          Fix Version/s Backlog [ 15811 ]
          Fix Version/s Middleware Backlog [ 17860 ]
          kbtaylor Kristina Taylor (Inactive) made changes -
          Rank Ranked higher
          kbtaylor Kristina Taylor (Inactive) made changes -
          Rank Ranked higher
          kbtaylor Kristina Taylor (Inactive) made changes -
          Rank Ranked higher
          kbtaylor Kristina Taylor (Inactive) made changes -
          Rank Ranked higher
          kbtaylor Kristina Taylor (Inactive) made changes -
          Rank Ranked higher
          ewestfal Eric Westfall made changes -
          Labels Old

            People

            • Assignee:
              Unassigned
              Reporter:
              jkeller Jonathan Keller
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: