Uploaded image for project: 'IGB'
  1. IGB
  2. IGBF-1666

Design new services based architecture for handling REST requests

    Details

    • Type: Task
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None

      Description

      Main idea of this task is to write a service which will simply redirect the request to respective module which will take care of request using Business logic which is already present.
      Approach :

      • We already have a mechanism to accept http/s request in App Manager bundle.
      • Create a interface (can be named as 'RequestHandler') which will have function declaration for 'HandleRequest' which will redirect request to business layer and 'ValidateURL' each URL request will have specific validation parameters like no. of parameters, valid input type etc .
      • This interface will be exported through this bundle.
      • Every Modules which are expected to receive http requests will create a services which will implement the 'RequestHandler' interface and it has to implement logic for 'HandleRequest' and 'ValidateURL'
      • Thus, whenever AppManager bundle receives request it will send it to all the 'RequestHandler' something using threading so as to make it asynchronous. So as to drop the invalid threads and only one thread will continue further to module.

      Start For Design:

      • Study MenuProvider which has something similar implementation.
      • Study how async request will be handled.
      • After Studying above point come up with design flow and logical design.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                srishteeM Srishtee Marotkar (Inactive)
                Reporter:
                ann.loraine Ann Loraine
              • Votes:
                0 Vote for this issue
                Watchers:
                Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: