-
Notifications
You must be signed in to change notification settings - Fork 530
Refactor AuthorityService to use caching & same pagination as other services #699
Description
AuthorityService currently extends IntegationService. This seems to be the only place IntegrationService is used in our codebase.
IntegationService seems similar to DataService but it does not seem to include the cache, remotedata and other current features.
IntegrationService also uses IntegrationSearchOptions for pagination, instead of the common PageInfo model.
The Authority Control / Controlled Vocabulary service should be using the same caching and pagination as other services, as this eases our maintenance and ensures that it has the same performance/behavior as other services.
This means we should look into the following changes:
- Remove the
IntegrationServiceand refactorAuthorityServiceto useDataService(to add caching to this service) - Remove the
IntegrationSearchOptionsand refactor code using it to instead usePageInfofor pagination.
This could be split into separate tasks as needed. However, as these two changes are directly related, it might be easier if done by the same developer. It's very possible the necessary refactoring here will require some larger changes to the AuthorityService, so it's worth considering all these necessary changes at one time.