-
Notifications
You must be signed in to change notification settings - Fork 1
feat: Add sharable cache #161
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have questions regarding this change that need to be answered.
@rajsite @atmgrifter00 @cameronwaterman Could you please review this PR? |
@priya-ni, I think there are still some very fundamental issues with the approach you are taking here. First, the fact that the Ultimately, it would be good to understand if there are patterns/mechanisms that the frameworks we are building on top of (i.e. Grafana/React) that handle concerns such as this. It seems like what we want is a dependency injection system with a service that can then be injected where it is needed (as we do in Angular). I believe we intend to discuss this PR at tomorrow's Soliton Tech Syncup (05/14). Hopefully after that meeting we can provide some better direction. |
Pull Request
🤨 Rationale
To add a new singleton class that will be used as a shared cache for the upcoming Work Orders and Test Plans data sources.
In the work orders and test plans data sources, query builders will be used to add filters. For fields such as Updated by,
Requested by
,Assigned to
, andCreated by
, dropdowns displaying usernames and email IDs will be provided. To avoid repeatedly querying user details each time a data source is selected, a shared cache will be used to store these details once and make them accessible across all data sources. Similarly this will be used to cacheworkspaces
,Products part numbers
,systems
.Please refer to this HLD for more details on how this cache will be used.
👩💻 Implementation
SharedCache
class with store map property that used to set & get values by key10 minutes
🧪 Testing
Added unit tests
✅ Checklist