...
- Create a new smart component for interacting with implementations of the distributed_configuration interface (See https://github.com/folio-org/stripes-smart-components/tree/master/lib/ConfigManager)
Pros/Cons
Pros
- Doesn't require use of additional X-Okapi-* headers
- Allows modules to depend on the interface
- It's use is completely optional
- Clients are not required to know/determine the module Id in order to call a specific implementation of the interface.
Cons
- More complex logic that Okapi, front-end and back-end need to support
- Using namespace
"id"
:
"distributed_configuration"
,
"namespace"
:
"foo"
,
"pathPattern"
:
"/configurations/entries"
doesn't have advantages over the existing path solution"id"
:
"foo_configuration"
,
"pathPattern"
:
"/foo/configurations/entries"
Other Considerations
- Do we want/need to incorporate version into the discriminator too? This is something that came up in the JIRA comments here.
- Do we even want to support RAML? If OpenAPI is the way forward, maybe we skip defining it in RAML...
- Has a way of sharing common API definitions/traits been sorted out yet on the OpenAPI side of things?
- Is the expectation that all modules will eventually move towards OpenAPI? Even those which currently use RAML?
JIRAs
Jira Legacy server System JiraJIRA serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key UXPROD-3018 Jira Legacy server System JiraJIRA serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key FOLIO-3105 Jira Legacy server System JiraJIRA serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key FOLIO-2875 - At least one user story for the OKAPI and ModuleDescriptor work
- One story for the RAML/OpenAPI work
- One story for the RMB work
- One story for the folio-spring-base work.
- One story for stripes-smart-components work.
- One story for a module to make use of this (Provider/BE)
- One story for a module to make use of this (Consumer/FE)
Jira Legacy server System JIRA serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key FOLIO-3121 Jira Legacy server System JIRA serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key FOLSPRINGB-18 Jira Legacy server System JIRA serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key OKAPI-1008 Jira Legacy server System JIRA serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key RMB-827 Jira Legacy server System JIRA serverId 01505d01-b853-3c2e-90f1-ee9b165564fc key STSMACOM-499