Introduction:
This document describes the design approach of using TPD framework in portal.
Background:
Jira Issue: https://project-sunbird.atlassian.net/browse/SH-3
Epic: https://project-sunbird.atlassian.net/browse/SH-33
Presently any tenant is using the framework as customization list of tenant-specific data(BGMS, Topics, sub-topics etc..). This framework is very well defined for ETB workflow
Problem Statement:
How custom tenant framework can be used for content/resources created for course.
Key design problems:
The course-related content/resources should be attached to custom/default TPD framework specified by the tenant
When this framework API call should happen(performance-related concern because of heavy framework data)
Design:
Solution 1:
We will make an API call (getformConfig) to get the custom framework while we start creating any course/resource from the training sub-tab.
Solution 2:
Since we are making the same getFormConfig API call to get the custom framework what we are making in the “Trainings” page, then we can take the same from the cache. If the user is directly coming to the workspace and trying to create anything from the training sub-tab, then only we will make the API call and store it in the cache. So, When the user goes to the “Trainings” page, we won’t make the API call again.