TracNav
OpenRasta's Documentation...
- Release Notes
- FAQs
Downloading/Building OpenRasta...
- Download from source
- Download the binaries
- Run the test suite
- .NET versions support
Using OpenRasta...
- Configuration how-tos
What you need to know about dependency injection
Tutorials
Building web-sites with OpenRasta...
- Supporting clients that only know GET and POST
Reference...
Hosting
Configuration
Modules
Pipeline...
- Pipeline contributors
- Well-known contributors
- PipelineContinuation members
Resources
Handlers
Binding...
- Object binders
- The default resource binder?
- ChangeSet<T> support?
Codecs
Pipeline Contributors
Pipeline contributors contain code that execute on every request. Pipeline Contributors have access to the whole context of the current call, can execute before or after any of the built in (or "known") contributors and can halt execution, handle redirections, or render something totally different.
All IPipelineContributors must implement Initialize(IPipeline). It is the responsibility of Initialize to state what will execute and when in the pipeline the contributor will execute relative to another contributor. Use the KnownStages class to select the relative contributor, e.g.
public void Initialize(IPipeline pipelineRunner) { pipelineRunner.Notify(MyMethod).Before<KnownStages.IOperationInvocation>(); }
Methods called in such a way are of type Func<ICommunicationContext, PipelineContinuation>, and so must return a PipelineContinuation value.
Contributor Lifetimes
Pipeline contributors are instantiated by OpenRasta as singletons. They must therefore be written in a stateless and re-usable manner. Persist instance data in a pipeline contributor at your peril!
