Well Known PipelineContributors
nmosafi edited this page Oct 24, 2012
·
3 revisions
By default, OpenRasta executes a number of “well-known” pipeline contributors for every request. When you’re writing your own contributors, you need to be aware of this execution order so you can place your contributor at the most appropriate point in the pipeline. Here’s a list of the well known contributor types names – shown here in one possible order of execution – that you might need for a call to IPipelineRunner.Notify(Method).Before<TContributor>()
or IPipelineRunner.Notify(Method).After<TContributor>()
, and the default implementation.
Well-known name | Default implementation | Description |
---|---|---|
KnownStages.IBegin |
Bootstrapper |
Bootstraps the pipeline |
none | DigestAuthorizer |
Performs HTTP digest authorization |
none | HttpMethodOverrider |
Overrides the HTTP method through the X-HttpMethod-Override http header |
none | UriDecorators |
Processes the uri decorators (IUriDecorator) |
KnownStages.IUriMatching |
ResourceTypeResolver |
Finds the resource key (or type) associated with a URI |
KnownStages.IHandlerSelection |
HandlerResolver |
Finds all handlers to service the current request |
KnownStages.IOperationCreation |
OperationCreator |
Returns the operations available on the handlers |
KnownStages.IOperationFiltering |
OperationFilter |
Filters out any operation not matching certain rules (http name etc) |
KnownStages.ICodecRequestSelection |
OperationCodecSelector |
Associates each operation with a codec that can process the incoming entity |
KnownStages.IRequestDecoding |
OperationHydrator |
Calls the codec to read the data from the request entity given to the operation to execute |
KnownStages.IOperationExecution |
OperationInvoker |
Invokes the selected operation on the handler |
KnownStages.IOperationResultInvocation |
OperationResultInvoker |
Executes the result of the operation (the OperationResult ) |
KnownStages.ICodecResponseSelection |
ResponseEntityCodecResolver |
Selects a codec for the response entity |
KnownStages.IResponseCoding |
ResponseEntityWriter |
Writes the response entity |
none | WebFormsPostbackEnabler |
Will be removed in 2.0RC |