Allow registering multiple InvoicedItemsProcessingService impls#1102
Allow registering multiple InvoicedItemsProcessingService impls#1102labkey-adam wants to merge 3 commits intodevelopfrom
Conversation
labkey-martyp
left a comment
There was a problem hiding this comment.
Not sure if you were ready for code review on this. We'll need register calls then in the client repos?
| protected BillingTask(Factory factory, PipelineJob job) | ||
| { | ||
| super(factory, job); | ||
| _processingService = InvoicedItemsProcessingService.get(job.getContainer()); |
There was a problem hiding this comment.
I think we'll want to use EHR_BillingManager.get().getBillingContainer(getJob().getContainer());
There was a problem hiding this comment.
I think we'll want to use EHR_BillingManager.get().getBillingContainer(getJob().getContainer());
Okay, I'll make that change. Not needed in EHR_BillingController.java?
Does relying on the registration module being active in the billing container make sense to you? IMO, this is more reliable than using folder type (which the old comment had suggested).
There was a problem hiding this comment.
Yeah probably should use the billing container as described above in the controller too. I don't think it will matter on a production server, but will probably matter on our test servers.
I think using the active modules in that container makes sense for production and test. Production will probably set that module property site wide, but tests will need to set it at the container level.
There was a problem hiding this comment.
Then I should probably just move the EHR_BillingManager.get().getBillingContainer() call into get()
There was a problem hiding this comment.
...except that the interface can't see the manager. So never mind.
Yes, this PR references PRs in WNPRC and TNPRC that adjust registration. I've assigned you as reviewer to those. |
Rationale
https://github.com/LabKey/kanban/issues/1577
We need to allow multiple modules to register a
InvoicedItemsProcessingServiceimpl. Provide a module at registration time and a container at retrieval time. Determine the impl to return based on active modules in the container.Related Pull Requests