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
.Configuration
18 using Castle
.Core
.Configuration
;
23 public interface IMonoRailConfiguration
26 /// Gets the SMTP config.
28 /// <value>The SMTP config.</value>
29 SmtpConfig SmtpConfig { get; }
32 /// Gets the view engine config.
34 /// <value>The view engine config.</value>
35 ViewEngineConfig ViewEngineConfig { get; }
38 /// Gets the controllers config.
40 /// <value>The controllers config.</value>
41 ControllersConfig ControllersConfig { get; set; }
44 /// Gets the view components config.
46 /// <value>The view components config.</value>
47 ViewComponentsConfig ViewComponentsConfig { get; set; }
50 /// Gets the routing rules.
52 /// <value>The routing rules.</value>
53 RoutingRuleCollection RoutingRules { get; set; }
56 /// Gets the extension entries.
58 /// <value>The extension entries.</value>
59 ExtensionEntryCollection ExtensionEntries { get; }
62 /// Gets the custom filter factory.
64 /// <value>The custom filter factory.</value>
65 Type CustomFilterFactory { get; set; }
68 /// Gets the scaffold config.
70 /// <value>The scaffold config.</value>
71 ScaffoldConfig ScaffoldConfig { get; set; }
74 /// Gets the url config.
76 /// <value>The url config.</value>
77 UrlConfig UrlConfig { get; set; }
80 /// Gets a value indicating whether match host name and path should be used on
84 /// <c>true</c> if it should match host name and path; otherwise, <c>false</c>.
86 bool MatchHostNameAndPath { get; }
89 /// Gets a value indicating whether routing should exclude app path.
91 /// <value><c>true</c> if exclude app path; otherwise, <c>false</c>.</value>
92 bool ExcludeAppPath { get; }
95 /// Gets the default urls.
97 /// <value>The default urls.</value>
98 DefaultUrlCollection DefaultUrls { get; }
101 /// Gets the services config.
103 /// <value>The services config.</value>
104 IConfiguration ServicesConfig { get; }
107 /// Gets the configuration section.
109 /// <value>The configuration section.</value>
110 IConfiguration ConfigurationSection { get; set; }
113 /// Gets or sets the JS generator configuration.
115 /// <value>The JS generator configuration.</value>
116 JSGeneratorConfiguration JSGeneratorConfiguration { get; set; }