Adding a new IRockOwinStartup interface for allowing plugins to implement OWIN functionality. #2142
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Contributor Agreement
Have you filled out and sent your Spark Contributor Agreement to secretary [at] sparkdevnetwork.org?
Yes
Context
What is the problem you encountered that lead to you creating this pull request?
We wanted to be able to have plugins hook into OWIN startup in addition to the Application Startup that is already in Rock. OWIN provides additional functionality and a deeper level of access to IIS that isn't available via standard the standard application startup.
Goal
What will this pull request achieve and how will this fix the problem?
This adds the ability for a plugin to hook into OWIN.
Strategy
How have you implemented your solution?
This is essentially the same functionality that already exists with the IRockStartup interface but uses the OWIN architecture instead of the standard Application Startup that the other interface uses.
Tests
If your code is a new method or function (that doesn't need a mock database or SqlServerTypes library) and can be Xunit tested see example be sure your pull request includes the corresponding unit tests in the Rock.Tests project. In all cases you MUST test your code before submitting a pull request.
I don't think we need to provide any additional testing.
Possible Implications
What could this change potentially impact? Are there any security considerations? Where could this potentially affect backwards compatibility?
To my knowledge, this shouldn't affect anything.
Screenshots
Provide us some screenshots if your pull request either alters existing UI or provides new UI. Arrows and labels are helpful.
N/A
Documentation
If your change effects the UI or needs to be documented in one of the existing user guides, please provide the brief write-up here:
We might want to provide a section in the documentation explaining how to add startup functionality with a plugin and when to choose IRockStartup vs IRockOwinStartup: https://www.rockrms.com/Rock/Developer/BookContent/26/26