kuali/kc — pull request #214 by leoherbie (2014-05-05 22:12:09+00:00)
Title: KCINFR-979: establishing a configuration api.  Removing code that isn't ...

This pull request is mainly designed to create an configuration api for S2S to consume. I have a few goals in mind with this design:

1) Search for parameters and easily get a complete list of what the S2S library uses
2) The S2S library should ONLY use parameters in the S2S namespace.
3) Insulate the S2S library from parameter changes
4) Simplify the S2S Configuration Service such that is doesn't need to know the difference between xml parameters and DB parameters and the rice concepts of app id, namespace, and component. None of these complexities are useful to the S2S library

Please pay special attention to the parameter replacement syntax. Any parameter that isn't specifically for S2S uses a parameter replacement syntax in the parameter value. This allows S2S parameters to easily reference other parameters inside of KC. I believe this feature could be useful to rice as a whole. We should consider donating the code.

Also, I pretty extensively unit testing this thing but the replacement syntax is a little strict so far. Do you thinking it should be improved so that @p{ns = "KC-PD", c = "Document", n = "proposaldevelopment.proposaltype.resubmission"} would work?