1
// Copyright 2004-2008 Castle Project - http://www.castleproject.org/
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
7 // http://www.apache.org/licenses/LICENSE-2.0
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
15 namespace Castle
.MonoRail
.Framework
17 using Castle
.Components
.Common
.EmailSender
;
18 using Castle
.Components
.Validator
;
20 using Castle
.MonoRail
.Framework
.Services
;
26 public interface IMonoRailServices
: IServiceProviderEx
29 /// Gets or sets the URL tokenizer.
31 /// <value>The URL tokenizer.</value>
32 IUrlTokenizer UrlTokenizer { get; set; }
35 /// Gets or sets the URL builder.
37 /// <value>The URL builder.</value>
38 IUrlBuilder UrlBuilder { get; set; }
41 /// Gets or sets the cache provider.
43 /// <value>The cache provider.</value>
44 ICacheProvider CacheProvider { get; set; }
47 /// Gets or sets the engine context factory.
49 /// <value>The engine context factory.</value>
50 IEngineContextFactory EngineContextFactory { get; set; }
53 /// Gets or sets the controller factory.
55 /// <value>The controller factory.</value>
56 IControllerFactory ControllerFactory { get; set; }
59 /// Gets or sets the controller context factory.
61 /// <value>The controller context factory.</value>
62 IControllerContextFactory ControllerContextFactory { get; set; }
65 /// Gets or sets the controller tree.
67 /// <value>The controller tree.</value>
68 IControllerTree ControllerTree { get; set; }
71 /// Gets or sets the view source loader.
73 /// <value>The view source loader.</value>
74 IViewSourceLoader ViewSourceLoader { get; set; }
77 /// Gets or sets the filter factory.
79 /// <value>The filter factory.</value>
80 IFilterFactory FilterFactory { get; set; }
83 /// Gets or sets the controller descriptor provider.
85 /// <value>The controller descriptor provider.</value>
86 IControllerDescriptorProvider ControllerDescriptorProvider { get; set; }
89 /// Gets or sets the view engine manager.
91 /// <value>The view engine manager.</value>
92 IViewEngineManager ViewEngineManager { get; set; }
95 /// Gets or sets the validator registry.
97 /// <value>The validator registry.</value>
98 IValidatorRegistry ValidatorRegistry { get; set; }
101 /// Gets or sets the action selector.
103 /// <value>The action selector.</value>
104 IActionSelector ActionSelector { get; set; }
107 /// Gets or sets the scaffold support.
109 /// <value>The scaffold support.</value>
110 IScaffoldingSupport ScaffoldSupport { get; set; }
113 /// Gets or sets the JSON serializer.
115 /// <value>The JSON serializer.</value>
116 IJSONSerializer JSONSerializer { get; set; }
119 /// Gets or sets the static resource registry service.
121 /// <value>The static resource registry.</value>
122 IStaticResourceRegistry StaticResourceRegistry { get; set; }
125 /// Gets or sets the email template service.
127 /// <value>The email template service.</value>
128 IEmailTemplateService EmailTemplateService { get; set; }
131 /// Gets or sets the email sender.
133 /// <value>The email sender.</value>
134 IEmailSender EmailSender { get; set; }
137 /// Gets or sets the resource factory.
139 /// <value>The resource factory.</value>
140 IResourceFactory ResourceFactory { get; set; }
143 /// Gets or sets the service initializer.
145 /// <value>The service initializer.</value>
146 IServiceInitializer ServiceInitializer { get; set; }
149 /// Gets or sets the helper factory.
151 /// <value>The helper factory.</value>
152 IHelperFactory HelperFactory { get; set; }
155 /// Gets or sets the extension manager.
157 /// <value>The extension manager.</value>
158 ExtensionManager ExtensionManager { get; set; }