Fixing an issue with output parameters that are of type IntPtr
[castle.git] / MonoRail / Castle.MonoRail.Framework / Configuration / IMonoRailConfiguration.cs
blob074315e37cabb44fe9c515d655d00ce1e0c8a7f9
1 // Copyright 2004-2008 Castle Project - http://www.castleproject.org/
2 //
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
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
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
17 using System;
18 using Castle.Core.Configuration;
20 /// <summary>
21 /// Pendent
22 /// </summary>
23 public interface IMonoRailConfiguration
25 /// <summary>
26 /// Gets the SMTP config.
27 /// </summary>
28 /// <value>The SMTP config.</value>
29 SmtpConfig SmtpConfig { get; }
31 /// <summary>
32 /// Gets the view engine config.
33 /// </summary>
34 /// <value>The view engine config.</value>
35 ViewEngineConfig ViewEngineConfig { get; }
37 /// <summary>
38 /// Gets the controllers config.
39 /// </summary>
40 /// <value>The controllers config.</value>
41 ControllersConfig ControllersConfig { get; set; }
43 /// <summary>
44 /// Gets the view components config.
45 /// </summary>
46 /// <value>The view components config.</value>
47 ViewComponentsConfig ViewComponentsConfig { get; set; }
49 /// <summary>
50 /// Gets the routing rules.
51 /// </summary>
52 /// <value>The routing rules.</value>
53 RoutingRuleCollection RoutingRules { get; set; }
55 /// <summary>
56 /// Gets the extension entries.
57 /// </summary>
58 /// <value>The extension entries.</value>
59 ExtensionEntryCollection ExtensionEntries { get; }
61 /// <summary>
62 /// Gets the custom filter factory.
63 /// </summary>
64 /// <value>The custom filter factory.</value>
65 Type CustomFilterFactory { get; set; }
67 /// <summary>
68 /// Gets the scaffold config.
69 /// </summary>
70 /// <value>The scaffold config.</value>
71 ScaffoldConfig ScaffoldConfig { get; set; }
73 /// <summary>
74 /// Gets the url config.
75 /// </summary>
76 /// <value>The url config.</value>
77 UrlConfig UrlConfig { get; set; }
79 /// <summary>
80 /// Gets a value indicating whether match host name and path should be used on
81 /// MonoRail routing.
82 /// </summary>
83 /// <value>
84 /// <c>true</c> if it should match host name and path; otherwise, <c>false</c>.
85 /// </value>
86 bool MatchHostNameAndPath { get; }
88 /// <summary>
89 /// Gets a value indicating whether routing should exclude app path.
90 /// </summary>
91 /// <value><c>true</c> if exclude app path; otherwise, <c>false</c>.</value>
92 bool ExcludeAppPath { get; }
94 /// <summary>
95 /// Gets the default urls.
96 /// </summary>
97 /// <value>The default urls.</value>
98 DefaultUrlCollection DefaultUrls { get; }
100 /// <summary>
101 /// Gets the services config.
102 /// </summary>
103 /// <value>The services config.</value>
104 IConfiguration ServicesConfig { get; }
106 /// <summary>
107 /// Gets the configuration section.
108 /// </summary>
109 /// <value>The configuration section.</value>
110 IConfiguration ConfigurationSection { get; set; }
112 /// <summary>
113 /// Gets or sets the JS generator configuration.
114 /// </summary>
115 /// <value>The JS generator configuration.</value>
116 JSGeneratorConfiguration JSGeneratorConfiguration { get; set; }