springnet-commits Mailing List for Spring Framework .NET (Page 18)
Brought to you by:
aseovic,
markpollack
You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(33) |
Aug
(163) |
Sep
(491) |
Oct
(289) |
Nov
(336) |
Dec
(84) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(227) |
Feb
(413) |
Mar
(128) |
Apr
(232) |
May
(92) |
Jun
(299) |
Jul
(386) |
Aug
(228) |
Sep
(237) |
Oct
(426) |
Nov
(325) |
Dec
(405) |
2006 |
Jan
(315) |
Feb
(311) |
Mar
(152) |
Apr
(177) |
May
(443) |
Jun
(92) |
Jul
(88) |
Aug
(80) |
Sep
(288) |
Oct
(515) |
Nov
(1049) |
Dec
(440) |
2007 |
Jan
(179) |
Feb
(406) |
Mar
(294) |
Apr
(80) |
May
(432) |
Jun
(242) |
Jul
(452) |
Aug
(710) |
Sep
(206) |
Oct
(240) |
Nov
(65) |
Dec
(227) |
2008 |
Jan
(80) |
Feb
(90) |
Mar
(98) |
Apr
(136) |
May
(101) |
Jun
(12) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Erich E. <oak...@us...> - 2008-02-02 16:31:16
|
Update of /cvsroot/springnet/Spring.Net/src/Spring/Spring.Web/Web/UI/Controls In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv17566/src/Spring/Spring.Web/Web/UI/Controls Modified Files: DataBindingPanel.cs Added Files: Panel.cs Log Message: added SPRNET-799 added new Panel control as a workaround for SPRNET-794 --- NEW FILE: Panel.cs --- (This appears to be a binary file; contents omitted.) Index: DataBindingPanel.cs =================================================================== RCS file: /cvsroot/springnet/Spring.Net/src/Spring/Spring.Web/Web/UI/Controls/DataBindingPanel.cs,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** DataBindingPanel.cs 3 Dec 2007 16:11:31 -0000 1.10 --- DataBindingPanel.cs 2 Feb 2008 16:31:08 -0000 1.11 *************** *** 66,69 **** --- 66,71 ---- private const string ATTR_BINDINGFORMATTER = "BindingFormatter"; private const string ATTR_BINDINGTYPE = "BindingType"; + private const string ATTR_MESSAGEID = "MessageId"; + private const string ATTR_ERRORPROVIDERS = "ErrorProviders"; private static readonly ILog Log = LogManager.GetLogger(typeof(DataBindingPanel)); *************** *** 244,255 **** } if (bindingTypeName != null) { binding = CreateBindingInstance(bindingTypeName, bindingSource, bindingTarget, bindingDirection, bindingFormatter); ! dataBound.BindingManager.AddBinding(binding); } else { ! dataBound.BindingManager.AddBinding(bindingSource, bindingTarget, bindingDirection, bindingFormatter); } } --- 246,273 ---- } + // get messageId and errorProviders list + string messageId = attributeCollection[ATTR_MESSAGEID]; + string errorProvidersText = attributeCollection[ATTR_ERRORPROVIDERS]; + string[] errorProviders = null; + if (StringUtils.HasLength(errorProvidersText)) + { + errorProviders = (string[])new Spring.Core.TypeConversion.StringArrayConverter().ConvertFrom(errorProvidersText); + } + + // add binding to BindingManager if (bindingTypeName != null) { binding = CreateBindingInstance(bindingTypeName, bindingSource, bindingTarget, bindingDirection, bindingFormatter); ! binding = dataBound.BindingManager.AddBinding(binding); } else { ! binding = dataBound.BindingManager.AddBinding(bindingSource, bindingTarget, bindingDirection, bindingFormatter); ! } ! ! // set error message ! if (StringUtils.HasLength(messageId)) ! { ! binding.SetErrorMessage( messageId, errorProviders ); } } |
From: Erich E. <oak...@us...> - 2008-02-02 10:24:43
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/Context/Support In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv5850/test/Spring/Spring.Web.Tests/Context/Support Added Files: WebApplicationContextTests.cs Log Message: fixed SPRNET-824 additional tests --- NEW FILE: WebApplicationContextTests.cs --- (This appears to be a binary file; contents omitted.) |
From: Erich E. <oak...@us...> - 2008-02-02 10:24:43
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/Data/Spring/Context/Support/WebApplicationContextTests In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv5850/test/Spring/Spring.Web.Tests/Data/Spring/Context/Support/WebApplicationContextTests Added Files: .cvsignore Dummy.aspx Web.Config Log Message: fixed SPRNET-824 additional tests --- NEW FILE: Web.Config --- <?xml version="1.0"?> <configuration> <configSections> <sectionGroup name="spring"> <section name="context" type="Spring.Context.Support.WebContextHandler, Spring.Web"/> <section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core"/> </sectionGroup> <sectionGroup name="common"> <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" /> </sectionGroup> </configSections> <!-- to see logging output in the attached debugger --> <common> <logging> <factoryAdapter type="Common.Logging.Simple.TraceLoggerFactoryAdapter, Common.Logging"> <arg key="Level" value="ALL" /> </factoryAdapter> </logging> </common> <system.web> <compilation debug="true" /> <!-- The following needs to be configured in order to enable Spring.NET Web Framework features --> <httpModules> <add name="SpringModule" type="Spring.Context.Support.WebSupportModule, Spring.Web"/> <add name="NUnitAspExModule" type="NUnitAspEx.AspTestExecutionModule, NUnitAspEx" /> </httpModules> <httpHandlers> <add verb="*" path="*.oaspx" type="System.Web.UI.PageHandlerFactory"/> <add verb="*" path="*.aspx" type="Spring.Web.Support.PageHandlerFactory, Spring.Web"/> <add verb="*" path="*.testmethod" type="NUnitAspEx.AspTestMethodHandler, NUnitAspEx" validate="false" /> </httpHandlers> </system.web> <spring> <context> <resource uri="config://spring/objects"/> </context> <objects xmlns="http://www.springframework.net"> <object type="Dummy.aspx"/> <object id="singletonObject" type="System.Object" /> <object id="prototypeObject" type="System.Object" singleton="false" /> <object id="requestScopedObject" type="System.Object" scope="request" /> <object id="sessionScopedObject" type="System.Object" scope="session" /> <object id="applicationScopedObject" type="System.Object" scope="application" /> </objects> </spring> </configuration> --- NEW FILE: .cvsignore --- bin --- NEW FILE: Dummy.aspx --- <%@ Page language="c#" EnableSessionState="false" AutoEventWireup="false" Inherits="Spring.Web.UI.Page" %><script language="c#" runat="server"> protected override void OnLoad(EventArgs e) { base.OnLoad(e); try { Session["disablesSession"] = "somevalue"; NUnit.Framework.Assert.Fail("must not be able to access session"); } catch(HttpException) {} } </script>OK |
From: Erich E. <oak...@us...> - 2008-02-02 10:24:43
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv5850/test/Spring/Spring.Web.Tests Modified Files: Spring.Web.Tests.2005.csproj Log Message: fixed SPRNET-824 additional tests Index: Spring.Web.Tests.2005.csproj =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/Spring.Web.Tests.2005.csproj,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** Spring.Web.Tests.2005.csproj 2 Feb 2008 09:12:44 -0000 1.28 --- Spring.Web.Tests.2005.csproj 2 Feb 2008 10:24:38 -0000 1.29 *************** *** 76,79 **** --- 76,80 ---- <Compile Include="Caching\AspNetCacheTests.cs" /> <Compile Include="Context\Support\HttpApplicationConfigurerTests.cs" /> + <Compile Include="Context\Support\WebApplicationContextTests.cs" /> <Compile Include="Core\IO\WebResourceTests.cs" /> <Compile Include="Data\Spring\Objects\Factory\Support\TestForm.aspx.cs"> *************** *** 112,115 **** --- 113,117 ---- </Compile> <Compile Include="Web\UI\UserControlTests.cs" /> + <None Include="Data\Spring\Context\Support\WebApplicationContextTests\Web.Config" /> <None Include="Data\Spring\Web\Support\PageHandlerFactoryTests\Web.Config.net-1.1" /> <None Include="Data\Spring\Web\Support\PageHandlerFactoryTests\Web.Config.net-2.0" /> *************** *** 121,124 **** --- 123,127 ---- <ItemGroup> <EmbeddedResource Include="Context\Support\HttpApplicationConfigurerTests.xml" /> + <Content Include="Data\Spring\Context\Support\WebApplicationContextTests\Dummy.aspx" /> <Content Include="Data\Spring\Objects\Factory\Support\TestForm.aspx" /> <Content Include="Data\Spring\Web\Support\PageHandlerFactoryTests\TransferAfterSetResult.aspx" /> |
From: Erich E. <oak...@us...> - 2008-02-02 10:24:43
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Core.Tests/Threading In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv5850/test/Spring/Spring.Core.Tests/Threading Modified Files: AsyncTestMethod.cs AsyncTestTask.cs Log Message: fixed SPRNET-824 additional tests Index: AsyncTestMethod.cs =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Core.Tests/Threading/AsyncTestMethod.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AsyncTestMethod.cs 30 May 2007 17:32:29 -0000 1.1 --- AsyncTestMethod.cs 2 Feb 2008 10:24:38 -0000 1.2 *************** *** 23,26 **** --- 23,27 ---- using System; using System.Threading; + using NUnit.Framework; #endregion *************** *** 35,43 **** public class AsyncTestMethod : AsyncTestTask { ! private ThreadStart callback; ! public AsyncTestMethod(int iterations, ThreadStart callback) ! : base(iterations) { this.callback = callback; } --- 36,72 ---- public class AsyncTestMethod : AsyncTestTask { ! public delegate object TestMethod(object[] args); ! private readonly TestMethod callback; ! private readonly object[] args; ! private object result; ! ! private class ThreadStartTestMethodAdapter ! { ! private readonly ThreadStart threadStart; ! ! public ThreadStartTestMethodAdapter(ThreadStart threadStart) ! { ! Assert.IsNotNull(threadStart); ! this.threadStart = threadStart; ! } ! ! public object Execute(object[] args) ! { ! threadStart(); ! return null; ! } ! } ! ! public AsyncTestMethod(int iterations, ThreadStart callback, params object[] args) ! : this(iterations, new TestMethod(new ThreadStartTestMethodAdapter(callback).Execute), args) { + } + + + public AsyncTestMethod(int iterations, TestMethod callback, params object[] args) : base(iterations) + { + Assert.IsNotNull(callback); + this.args = args; this.callback = callback; } *************** *** 45,49 **** public override void DoExecute() { ! callback(); } } --- 74,83 ---- public override void DoExecute() { ! result = callback(args); ! } ! ! public object Result ! { ! get { return result; } } } Index: AsyncTestTask.cs =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Core.Tests/Threading/AsyncTestTask.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AsyncTestTask.cs 30 May 2007 18:37:11 -0000 1.1 --- AsyncTestTask.cs 2 Feb 2008 10:24:38 -0000 1.2 *************** *** 37,41 **** private Exception exception; private Thread t; ! private int iterations; private int iterationno; --- 37,41 ---- private Exception exception; private Thread t; ! private readonly int iterations; private int iterationno; |
From: Erich E. <oak...@us...> - 2008-02-02 10:24:42
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/Web/UI In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv5850/test/Spring/Spring.Web.Tests/Web/UI Added Files: UserControlTests.cs Log Message: fixed SPRNET-824 additional tests --- NEW FILE: UserControlTests.cs --- (This appears to be a binary file; contents omitted.) |
From: Erich E. <oak...@us...> - 2008-02-02 10:21:51
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/Data/Spring/Context/Support/WebApplicationContextTests In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv4705/WebApplicationContextTests Log Message: Directory /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/Data/Spring/Context/Support/WebApplicationContextTests added to the repository |
From: Erich E. <oak...@us...> - 2008-02-02 10:21:42
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/Data/Spring/Context/Support In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv4695/Support Log Message: Directory /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/Data/Spring/Context/Support added to the repository |
From: Erich E. <oak...@us...> - 2008-02-02 10:21:34
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/Data/Spring/Context In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv4681/Context Log Message: Directory /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/Data/Spring/Context added to the repository |
From: Erich E. <oak...@us...> - 2008-02-02 09:12:51
|
Update of /cvsroot/springnet/Spring.Net/src/Spring/Spring.Web/Web/UI In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv10254/src/Spring/Spring.Web/Web/UI Modified Files: Page.cs UserControl.cs Log Message: fixed SPRNET-531, SPRNET-864 Index: Page.cs =================================================================== RCS file: /cvsroot/springnet/Spring.Net/src/Spring/Spring.Web/Web/UI/Page.cs,v retrieving revision 1.85 retrieving revision 1.86 diff -C2 -d -r1.85 -r1.86 *** Page.cs 28 Nov 2007 23:26:10 -0000 1.85 --- Page.cs 2 Feb 2008 09:12:44 -0000 1.86 *************** *** 19,22 **** --- 19,24 ---- #endregion + #region Imports + using System; using System.Collections; *************** *** 45,48 **** --- 47,52 ---- using IValidator=Spring.Validation.IValidator; + #endregion + namespace Spring.Web.UI { *************** *** 1086,1090 **** /// </summary> /// <param name="resultName">Result name.</param> ! protected void SetResult(string resultName) { Result result = (Result) Results[resultName]; --- 1090,1094 ---- /// </summary> /// <param name="resultName">Result name.</param> ! protected internal void SetResult(string resultName) { Result result = (Result) Results[resultName]; Index: UserControl.cs =================================================================== RCS file: /cvsroot/springnet/Spring.Net/src/Spring/Spring.Web/Web/UI/UserControl.cs,v retrieving revision 1.49 retrieving revision 1.50 diff -C2 -d -r1.49 -r1.50 *** UserControl.cs 23 Aug 2007 08:27:08 -0000 1.49 --- UserControl.cs 2 Feb 2008 09:12:44 -0000 1.50 *************** *** 19,22 **** --- 19,24 ---- #endregion + #region Imports + using System; using System.Collections; *************** *** 34,37 **** --- 36,40 ---- using Spring.Context; using Spring.Context.Support; + using Spring.Core; using Spring.DataBinding; using Spring.Globalization; *************** *** 39,42 **** --- 42,47 ---- using Spring.Web.Support; + #endregion + namespace Spring.Web.UI { *************** *** 64,67 **** --- 69,73 ---- private IDictionary sharedState; private IBindingContainer bindingManager; + private IDictionary results; private IApplicationContext applicationContext; private IApplicationContext defaultApplicationContext; *************** *** 388,391 **** --- 394,469 ---- #endregion Shared State support + #region Result support + + /// <summary> + /// Gets or sets map of result names to target URLs + /// </summary> + [Browsable(false)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] + public IDictionary Results + { + get + { + if (results == null) + { + results = new Hashtable(); + } + return results; + } + set + { + results = new Hashtable(); + foreach (DictionaryEntry entry in value) + { + if (entry.Value is Result) + { + results[entry.Key] = entry.Value; + } + else if (entry.Value is String) + { + results[entry.Key] = new Result((string)entry.Value); + } + else + { + throw new TypeMismatchException( + "Unable to create result object. Please use either String or Result instances to define results."); + } + } + } + } + + /// <summary> + /// Redirects user to a URL mapped to specified result name. + /// </summary> + /// <param name="resultName">Result name.</param> + protected void SetResult(string resultName) + { + Result result = (Result)Results[resultName]; + if (result == null) + { + // bubble up result in the hierarchy + Control parent = this.Parent; + while(parent != null) + { + if (parent is UserControl) + { + ((UserControl)parent).SetResult(resultName); + return; + } + else if (parent is Page) + { + ((Page) parent).SetResult(resultName); + return; + } + parent = parent.Parent; + } + throw new ArgumentException(string.Format("No URL mapping found for the specified result '{0}'.", resultName), "resultName"); + } + + result.Navigate(this); + } + + #endregion + #region Data binding support |
From: Erich E. <oak...@us...> - 2008-02-02 09:12:51
|
Update of /cvsroot/springnet/Spring.Net/src/Spring/Spring.Web/Web/Support In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv10254/src/Spring/Spring.Web/Web/Support Modified Files: Result.cs Log Message: fixed SPRNET-531, SPRNET-864 Index: Result.cs =================================================================== RCS file: /cvsroot/springnet/Spring.Net/src/Spring/Spring.Web/Web/Support/Result.cs,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** Result.cs 19 Apr 2007 07:48:59 -0000 1.12 --- Result.cs 2 Feb 2008 09:12:44 -0000 1.13 *************** *** 32,392 **** namespace Spring.Web.Support { ! /// <summary> ! /// Represents the ASPX result page that an operation maps to. ! /// </summary> ! /// <remarks> ! /// <p> ! /// Parameters can reference variables accessible from the page using the ! /// standard NAnt style property notation, namely <c>${varName}</c>. ! /// </p> ! /// <p> ! /// The <c>result</c> <see cref="System.String"/> that is passed as the sole ! /// parameter to the parameterized constructor ! /// (<see cref="Spring.Web.Support.Result(string)"/>) must adhere to the ! /// following format: ! /// </p> ! /// <code> ! /// [<mode>:]<targetPage>[?param1,param2,...,paramN] ! /// </code> ! /// <p> ! /// Only the <c>targetPage</c> is mandatory. ! /// </p> ! /// </remarks> ! /// <example> ! /// <p> ! /// Examples of valid <see cref="System.String"/> values that can be passed ! /// to the the parameterized constructor ! /// (<see cref="Spring.Web.Support.Result(string)"/>) include: ! /// </p> ! /// <p> ! /// <list type="bullet"> ! /// <item><description>Login.aspx</description></item> ! /// <item><description>~/Login.aspx</description></item> ! /// <item><description>redirect:~/Login.aspx</description></item> ! /// <item><description>transfer:~/Login.aspx</description></item> ! /// <item><description>transfer:Services/Register.aspx</description></item> ! /// <item><description>Login.aspx?username=springboy,password=7623AAjoe</description></item> ! /// <item><description>redirect:Login.aspx?username=springboy,password=7623AAjoe</description></item> ! /// </list> ! /// </p> ! /// </example> ! /// <author>Aleksandar Seovic</author> ! /// <author>Matan Shapira</author> ! /// <version>$Id$</version> ! [Serializable] ! public class Result ! { ! #region Constants ! /// <summary> ! /// The default <see cref="Spring.Web.Support.ResultMode"/>. ! /// </summary> ! /// <remarks> ! /// <p> ! /// Currently defaults to <see cref="Spring.Web.Support.ResultMode.Transfer"/>. ! /// </p> ! /// </remarks> ! /// <seealso cref="Spring.Web.Support.ResultMode"/> ! public const ResultMode DefaultResultMode = ResultMode.Transfer; ! #endregion ! #region Fields ! private ResultMode mode = DefaultResultMode; ! private string targetPage; ! private IDictionary parameters; ! #endregion ! #region Constructor (s) / Destructor ! /// <summary> ! /// Creates a new instance of the <see cref="Spring.Web.Support.Result"/> class. ! /// </summary> ! public Result() ! {} ! /// <summary> ! /// Creates a new instance of the <see cref="Spring.Web.Support.Result"/> class. ! /// </summary> ! /// <remarks> ! /// <p> ! /// See both the class documentation (<see cref="Spring.Web.Support.Result"/>) ! /// and the reference documentation for the Spring.Web library for a ! /// discussion and examples of what values the supplied <paramref name="result"/> ! /// can have. ! /// </p> ! /// </remarks> ! /// <param name="result">The result descriptor.</param> ! /// <exception cref="System.ArgumentNullException"> ! /// If the supplied <paramref name="result"/> is <see langword="null"/> or ! /// contains only whitespace character(s). ! /// </exception> ! public Result(string result) ! { ! AssertUtils.ArgumentHasText(result, "result"); ! result = ExtractAndSetResultMode(result); ! int indexOfQueryStringDelimiter = result.IndexOf('?'); ! if(indexOfQueryStringDelimiter > 0) ! { ! ParseParameters(result.Substring(indexOfQueryStringDelimiter + 1)); ! result = result.Substring(0, indexOfQueryStringDelimiter); ! } ! targetPage = result.Trim(); ! } ! #endregion ! #region Properties ! /// <summary> ! /// The <see cref="Spring.Web.Support.ResultMode"/>. Defines which ! /// method will be used to navigate to the ! /// <see cref="Spring.Web.Support.Result.TargetPage"/>. ! /// </summary> ! public ResultMode Mode ! { ! get { return mode; } ! set { mode = value; } ! } ! /// <summary> ! /// The target page. ! /// </summary> ! /// <remarks> ! /// <p> ! /// This is the (relative) path to the target page. ! /// </p> ! /// </remarks> ! /// <example> ! /// <p> ! /// Examples of valid values would be: ! /// </p> ! /// <p> ! /// <list type="bullet"> ! /// <item><description>Login.aspx</description></item> ! /// <item><description>~/Login.aspx</description></item> ! /// <item><description>~/B2B/SignUp.aspx</description></item> ! /// <item><description>B2B/Foo/FooServices.aspx</description></item> ! /// </list> ! /// </p> ! /// </example> ! public string TargetPage ! { ! get { return targetPage; } ! set { targetPage = value; } ! } ! /// <summary> ! /// The parameters thar are to be passed to the ! /// <see cref="Spring.Web.Support.Result.TargetPage"/> upon ! /// navigation. ! /// </summary> ! public IDictionary Parameters ! { ! get { return parameters; } ! set { parameters = value; } ! } ! /// <summary> ! /// Indicates, if <see cref="HttpServerUtility.Transfer(string,bool)"/> should be called with preserverForm='true' | 'false'. Only relevant for ResultMode.TransferXXXX modes. ! /// </summary> ! public bool PreserveForm ! { ! get { return (Mode == ResultMode.Transfer); } ! } ! #endregion ! /// <summary> ! /// Navigates to the <see cref="Spring.Web.Support.Result.TargetPage"/> ! /// defined by this result. ! /// </summary> ! /// <param name="page"> ! /// The context object for parameter resolution. This is typically ! /// a <see cref="System.Web.UI.Page"/>. ! /// </param> ! public virtual void Navigate(object page) ! { ! switch(Mode) ! { ! case ResultMode.Redirect: ! DoRedirect(page); ! break; ! case ResultMode.Transfer: ! case ResultMode.TransferNoPreserve: ! DoTransfer(page); ! break; ! default: ! throw new ArgumentOutOfRangeException(string.Format("Unknown ResultMode {0}", Mode)); ! } ! } ! /// <summary> ! /// Performs a server-side transfer to the ! /// <see cref="Spring.Web.Support.Result.TargetPage"/> defined by this result. ! /// </summary> ! /// <param name="page"> ! /// The context object for parameter resolution. This is typically ! /// a <see cref="System.Web.UI.Page"/>. ! /// </param> ! /// <seealso cref="System.Web.HttpServerUtility.Transfer(string,bool)"/> ! protected virtual void DoTransfer(object page) ! { ! HttpContext ctx = HttpContext.Current; ! SetTransferParameters(ctx.Items, page); ! ctx.Server.Transfer(TargetPage, PreserveForm); ! } ! /// <summary> ! /// Resolves transfer parameters and stores them into <see cref="IDictionary" /> instance. ! /// </summary> ! /// <param name="contextDictionary"></param> ! /// <param name="page"></param> ! protected void SetTransferParameters(IDictionary contextDictionary, object page) ! { ! if(this.parameters != null && this.parameters.Count > 0) ! { ! foreach(DictionaryEntry entry in this.parameters) ! { ! string value = entry.Value.ToString(); ! if(IsRuntimeExpression(value)) ! { ! contextDictionary[entry.Key] = ResolveRuntimeExpression(page, value); ! } ! else ! { ! contextDictionary[entry.Key] = entry.Value; ! } ! } ! } ! } ! /// <summary> ! /// Performs a redirect to the ! /// <see cref="Spring.Web.Support.Result.TargetPage"/> defined by this ! /// result. ! /// </summary> ! /// <param name="page"> ! /// The context object for parameter resolution. This is typically ! /// a <see cref="System.Web.UI.Page"/>. ! /// </param> ! /// <seealso cref="System.Web.HttpResponse.Redirect(string)"/> ! protected virtual void DoRedirect(object page) ! { ! HttpContext.Current.Response.Redirect(GetRedirectUri(page)); ! } ! /// <summary> ! /// Returns a redirect url string that points to the ! /// <see cref="Spring.Web.Support.Result.TargetPage"/> defined by this ! /// result. ! /// </summary> ! /// <param name="page"> ! /// A redirect url string. ! /// </param> ! public string GetRedirectUri(object page) ! { ! StringBuilder url = new StringBuilder(256); ! url.Append(TargetPage); ! if(parameters != null && parameters.Count > 0) ! { ! char separator = '?'; ! foreach(DictionaryEntry entry in parameters) ! { ! url.Append(separator); ! url.Append(entry.Key).Append('='); ! string value = entry.Value.ToString(); ! if(IsRuntimeExpression(value)) ! { ! url.Append(HttpContext.Current.Server.UrlEncode( ! ResolveRuntimeExpression(page, value).ToString())); ! } ! else ! { ! url.Append(HttpContext.Current.Server.UrlEncode(value)); ! } ! separator = '&'; ! } ! } ! return url.ToString(); ! } ! private static bool IsRuntimeExpression(string value) ! { ! return value.StartsWith("${") && value.EndsWith("}"); ! } ! private static object ResolveRuntimeExpression(object page, string value) ! { ! return ExpressionEvaluator.GetValue(page, value.Substring(2, value.Length - 3)); ! } ! /// <summary> ! /// Extracts and sets this instance's <see cref="Spring.Web.Support.Result.Mode"/> ! /// property from the supplied <paramref name="result"/> descriptor. ! /// </summary> ! /// <remarks> ! /// <p> ! /// The supplied <paramref name="result"/> descriptor is typically ! /// something like <c>/Foo.aspx</c> or ! /// <c>redirect:http://www.springframework.net/</c>. ! /// </p> ! /// </remarks> ! /// <param name="result"> ! /// The result descriptor. ! /// </param> ! /// <returns> ! /// The supplied <paramref name="result"/> without the result mode ! /// prefix (if any). ! /// </returns> ! /// <exception cref="System.ArgumentOutOfRangeException"> ! /// If the supplied <paramref name="result"/> starts with an illegal ! /// result mode (see <see cref="Spring.Web.Support.ResultMode"/>). ! /// </exception> ! private string ExtractAndSetResultMode(string result) ! { ! int indexOfResultModeDelimiter = result.IndexOf(':'); ! if(indexOfResultModeDelimiter > 0) ! { ! try ! { ! Mode = (ResultMode) Enum.Parse(typeof(ResultMode), ! result.Substring(0, indexOfResultModeDelimiter), true); ! return result.Substring(indexOfResultModeDelimiter + 1); ! } ! catch ! { ! throw new ArgumentOutOfRangeException("result", result, "Illegal result mode."); ! } ! } ! return result; ! } ! /// <summary> ! /// Parses query parameters from the supplied <paramref name="queryString"/>. ! /// </summary> ! /// <param name="queryString"> ! /// The query string (may be <cref lang="null"/>). ! /// </param> ! private void ParseParameters(string queryString) ! { ! if(StringUtils.HasText(queryString)) ! { ! this.parameters = new Hashtable(); ! string[] nameValuePairs = queryString.Split("&,".ToCharArray()); ! foreach(string pair in nameValuePairs) ! { ! int n = pair.IndexOf('='); ! if(n > 0) ! { ! string name = pair.Substring(0, n); ! string val = pair.Substring(n + 1).Trim(); ! this.parameters[name] = val; ! } ! } ! } ! } ! } } \ No newline at end of file --- 32,393 ---- namespace Spring.Web.Support { ! /// <summary> ! /// Represents the ASPX result page that an operation maps to. ! /// </summary> ! /// <remarks> ! /// <p> ! /// Parameters can reference variables accessible from the page using the ! /// standard NAnt style property notation, namely <c>${varName}</c>. ! /// </p> ! /// <p> ! /// The <c>result</c> <see cref="System.String"/> that is passed as the sole ! /// parameter to the parameterized constructor ! /// (<see cref="Spring.Web.Support.Result(string)"/>) must adhere to the ! /// following format: ! /// </p> ! /// <code> ! /// [<mode>:]<targetPage>[?param1,param2,...,paramN] ! /// </code> ! /// <p> ! /// Only the <c>targetPage</c> is mandatory. ! /// </p> ! /// </remarks> ! /// <example> ! /// <p> ! /// Examples of valid <see cref="System.String"/> values that can be passed ! /// to the the parameterized constructor ! /// (<see cref="Spring.Web.Support.Result(string)"/>) include: ! /// </p> ! /// <p> ! /// <list type="bullet"> ! /// <item><description>Login.aspx</description></item> ! /// <item><description>~/Login.aspx</description></item> ! /// <item><description>redirect:~/Login.aspx</description></item> ! /// <item><description>transfer:~/Login.aspx</description></item> ! /// <item><description>transfer:Services/Register.aspx</description></item> ! /// <item><description>Login.aspx?username=springboy,password=7623AAjoe</description></item> ! /// <item><description>redirect:Login.aspx?username=springboy,password=7623AAjoe</description></item> ! /// </list> ! /// </p> ! /// </example> ! /// <author>Aleksandar Seovic</author> ! /// <author>Matan Shapira</author> ! /// <version>$Id$</version> ! [Serializable] ! public class Result ! { ! #region Constants ! /// <summary> ! /// The default <see cref="Spring.Web.Support.ResultMode"/>. ! /// </summary> ! /// <remarks> ! /// <p> ! /// Currently defaults to <see cref="Spring.Web.Support.ResultMode.Transfer"/>. ! /// </p> ! /// </remarks> ! /// <seealso cref="Spring.Web.Support.ResultMode"/> ! public const ResultMode DefaultResultMode = ResultMode.Transfer; ! #endregion ! #region Fields ! private ResultMode mode = DefaultResultMode; ! private string targetPage; ! private IDictionary parameters; ! #endregion ! #region Constructor (s) / Destructor ! /// <summary> ! /// Creates a new instance of the <see cref="Spring.Web.Support.Result"/> class. ! /// </summary> ! public Result() ! { } ! /// <summary> ! /// Creates a new instance of the <see cref="Spring.Web.Support.Result"/> class. ! /// </summary> ! /// <remarks> ! /// <p> ! /// See both the class documentation (<see cref="Spring.Web.Support.Result"/>) ! /// and the reference documentation for the Spring.Web library for a ! /// discussion and examples of what values the supplied <paramref name="result"/> ! /// can have. ! /// </p> ! /// </remarks> ! /// <param name="result">The result descriptor.</param> ! /// <exception cref="System.ArgumentNullException"> ! /// If the supplied <paramref name="result"/> is <see langword="null"/> or ! /// contains only whitespace character(s). ! /// </exception> ! public Result(string result) ! { ! AssertUtils.ArgumentHasText(result, "result"); ! result = ExtractAndSetResultMode(result); ! int indexOfQueryStringDelimiter = result.IndexOf('?'); ! if (indexOfQueryStringDelimiter > 0) ! { ! ParseParameters(result.Substring(indexOfQueryStringDelimiter + 1)); ! result = result.Substring(0, indexOfQueryStringDelimiter); ! } ! targetPage = result.Trim(); ! } ! #endregion ! #region Properties ! /// <summary> ! /// The <see cref="Spring.Web.Support.ResultMode"/>. Defines which ! /// method will be used to navigate to the ! /// <see cref="Spring.Web.Support.Result.TargetPage"/>. ! /// </summary> ! public ResultMode Mode ! { ! get { return mode; } ! set { mode = value; } ! } ! /// <summary> ! /// The target page. ! /// </summary> ! /// <remarks> ! /// <p> ! /// This is the (relative) path to the target page. ! /// </p> ! /// </remarks> ! /// <example> ! /// <p> ! /// Examples of valid values would be: ! /// </p> ! /// <p> ! /// <list type="bullet"> ! /// <item><description>Login.aspx</description></item> ! /// <item><description>~/Login.aspx</description></item> ! /// <item><description>~/B2B/SignUp.aspx</description></item> ! /// <item><description>B2B/Foo/FooServices.aspx</description></item> ! /// </list> ! /// </p> ! /// </example> ! public string TargetPage ! { ! get { return targetPage; } ! set { targetPage = value; } ! } ! /// <summary> ! /// The parameters thar are to be passed to the ! /// <see cref="Spring.Web.Support.Result.TargetPage"/> upon ! /// navigation. ! /// </summary> ! public IDictionary Parameters ! { ! get { return parameters; } ! set { parameters = value; } ! } ! /// <summary> ! /// Indicates, if <see cref="HttpServerUtility.Transfer(string,bool)"/> should be called with preserverForm='true' | 'false'. Only relevant for ResultMode.TransferXXXX modes. ! /// </summary> ! public bool PreserveForm ! { ! get { return (Mode == ResultMode.Transfer); } ! } ! #endregion ! /// <summary> ! /// Navigates to the <see cref="Spring.Web.Support.Result.TargetPage"/> ! /// defined by this result. ! /// </summary> ! /// <param name="page"> ! /// The context object for parameter resolution. This is typically ! /// a <see cref="System.Web.UI.Page"/>. ! /// </param> ! public virtual void Navigate(object page) ! { ! switch (Mode) ! { ! case ResultMode.Redirect: ! DoRedirect(page); ! break; ! case ResultMode.Transfer: ! case ResultMode.TransferNoPreserve: ! DoTransfer(page); ! break; ! default: ! throw new ArgumentOutOfRangeException(string.Format("Unknown ResultMode {0}", Mode)); ! } ! } ! /// <summary> ! /// Performs a server-side transfer to the ! /// <see cref="Spring.Web.Support.Result.TargetPage"/> defined by this result. ! /// </summary> ! /// <param name="page"> ! /// The context object for parameter resolution. This is typically ! /// a <see cref="System.Web.UI.Page"/>. ! /// </param> ! /// <seealso cref="System.Web.HttpServerUtility.Transfer(string,bool)"/> ! protected virtual void DoTransfer(object page) ! { ! HttpContext ctx = HttpContext.Current; ! SetTransferParameters(ctx.Items, page); ! ctx.Server.Transfer(TargetPage, PreserveForm); ! } ! /// <summary> ! /// Resolves transfer parameters and stores them into <see cref="IDictionary" /> instance. ! /// </summary> ! /// <param name="contextDictionary"></param> ! /// <param name="page"></param> ! protected void SetTransferParameters(IDictionary contextDictionary, object page) ! { ! if (this.parameters != null && this.parameters.Count > 0) ! { ! foreach (DictionaryEntry entry in this.parameters) ! { ! string value = entry.Value.ToString(); ! if (IsRuntimeExpression(value)) ! { ! contextDictionary[entry.Key] = ResolveRuntimeExpression(page, value); ! } ! else ! { ! contextDictionary[entry.Key] = entry.Value; ! } ! } ! } ! } ! /// <summary> ! /// Performs a redirect to the ! /// <see cref="Spring.Web.Support.Result.TargetPage"/> defined by this ! /// result. ! /// </summary> ! /// <param name="page"> ! /// The context object for parameter resolution. This is typically ! /// a <see cref="System.Web.UI.Page"/>. ! /// </param> ! /// <seealso cref="System.Web.HttpResponse.Redirect(string)"/> ! protected virtual void DoRedirect(object page) ! { ! HttpContext.Current.Response.Redirect(GetRedirectUri(page)); ! } ! /// <summary> ! /// Returns a redirect url string that points to the ! /// <see cref="Spring.Web.Support.Result.TargetPage"/> defined by this ! /// result. ! /// </summary> ! /// <param name="page"> ! /// A redirect url string. ! /// </param> ! public string GetRedirectUri(object page) ! { ! StringBuilder url = new StringBuilder(256); ! url.Append(TargetPage); ! if (parameters != null && parameters.Count > 0) ! { ! char separator = '?'; ! foreach (DictionaryEntry entry in parameters) ! { ! url.Append(separator); ! url.Append(entry.Key).Append('='); ! string value = entry.Value.ToString(); ! if (IsRuntimeExpression(value)) ! { ! url.Append(HttpContext.Current.Server.UrlEncode( ! ResolveRuntimeExpression(page, value).ToString())); ! } ! else ! { ! url.Append(HttpContext.Current.Server.UrlEncode(value)); ! } ! separator = '&'; ! } ! } ! return url.ToString(); ! } ! private static bool IsRuntimeExpression(string value) ! { ! // allow for 2 alternative prefixes (SPRNET-864) ! return (value.StartsWith("${") || value.StartsWith("%{")) && value.EndsWith("}"); ! } ! private static object ResolveRuntimeExpression(object page, string value) ! { ! return ExpressionEvaluator.GetValue(page, value.Substring(2, value.Length - 3)); ! } ! /// <summary> ! /// Extracts and sets this instance's <see cref="Spring.Web.Support.Result.Mode"/> ! /// property from the supplied <paramref name="result"/> descriptor. ! /// </summary> ! /// <remarks> ! /// <p> ! /// The supplied <paramref name="result"/> descriptor is typically ! /// something like <c>/Foo.aspx</c> or ! /// <c>redirect:http://www.springframework.net/</c>. ! /// </p> ! /// </remarks> ! /// <param name="result"> ! /// The result descriptor. ! /// </param> ! /// <returns> ! /// The supplied <paramref name="result"/> without the result mode ! /// prefix (if any). ! /// </returns> ! /// <exception cref="System.ArgumentOutOfRangeException"> ! /// If the supplied <paramref name="result"/> starts with an illegal ! /// result mode (see <see cref="Spring.Web.Support.ResultMode"/>). ! /// </exception> ! private string ExtractAndSetResultMode(string result) ! { ! int indexOfResultModeDelimiter = result.IndexOf(':'); ! if (indexOfResultModeDelimiter > 0) ! { ! try ! { ! Mode = (ResultMode)Enum.Parse(typeof(ResultMode), ! result.Substring(0, indexOfResultModeDelimiter), true); ! return result.Substring(indexOfResultModeDelimiter + 1); ! } ! catch ! { ! throw new ArgumentOutOfRangeException("result", result, "Illegal result mode."); ! } ! } ! return result; ! } ! /// <summary> ! /// Parses query parameters from the supplied <paramref name="queryString"/>. ! /// </summary> ! /// <param name="queryString"> ! /// The query string (may be <cref lang="null"/>). ! /// </param> ! private void ParseParameters(string queryString) ! { ! if (StringUtils.HasText(queryString)) ! { ! this.parameters = new Hashtable(); ! string[] nameValuePairs = queryString.Split("&,".ToCharArray()); ! foreach (string pair in nameValuePairs) ! { ! int n = pair.IndexOf('='); ! if (n > 0) ! { ! string name = pair.Substring(0, n); ! string val = pair.Substring(n + 1).Trim(); ! this.parameters[name] = val; ! } ! } ! } ! } ! } } \ No newline at end of file |
From: Erich E. <oak...@us...> - 2008-02-02 09:12:51
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv10254/test/Spring/Spring.Web.Tests Modified Files: Spring.Web.Tests.2005.csproj Log Message: fixed SPRNET-531, SPRNET-864 Index: Spring.Web.Tests.2005.csproj =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/Spring.Web.Tests.2005.csproj,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** Spring.Web.Tests.2005.csproj 27 Jan 2008 23:29:55 -0000 1.27 --- Spring.Web.Tests.2005.csproj 2 Feb 2008 09:12:44 -0000 1.28 *************** *** 76,80 **** <Compile Include="Caching\AspNetCacheTests.cs" /> <Compile Include="Context\Support\HttpApplicationConfigurerTests.cs" /> - <Compile Include="Context\Support\WebApplicationContextTests.cs" /> <Compile Include="Core\IO\WebResourceTests.cs" /> <Compile Include="Data\Spring\Objects\Factory\Support\TestForm.aspx.cs"> --- 76,79 ---- *************** *** 112,115 **** --- 111,115 ---- <Compile Include="Web\UI\PageTests.cs"> </Compile> + <Compile Include="Web\UI\UserControlTests.cs" /> <None Include="Data\Spring\Web\Support\PageHandlerFactoryTests\Web.Config.net-1.1" /> <None Include="Data\Spring\Web\Support\PageHandlerFactoryTests\Web.Config.net-2.0" /> |
From: Erich E. <oak...@us...> - 2008-02-02 09:12:51
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/Web/UI In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv10254/test/Spring/Spring.Web.Tests/Web/UI Modified Files: PageTests.cs Log Message: fixed SPRNET-531, SPRNET-864 Index: PageTests.cs =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Web.Tests/Web/UI/PageTests.cs,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** PageTests.cs 28 Nov 2007 23:40:25 -0000 1.5 --- PageTests.cs 2 Feb 2008 09:12:45 -0000 1.6 *************** *** 26,29 **** --- 26,30 ---- using System.Threading; using NUnit.Framework; + using Rhino.Mocks; using Spring.Globalization; using Spring.Globalization.Resolvers; *************** *** 31,34 **** --- 32,36 ---- using Spring.TestSupport; using Spring.Validation; + using Spring.Web.Support; #endregion *************** *** 114,117 **** --- 116,134 ---- } } + + [Test] + public void SetResultSelectsCorrectResult() + { + MockRepository mocks = new MockRepository(); + TestPage page = new TestPage(); + + Result theResult = (Result) mocks.CreateMock(typeof (Result)); + theResult.Navigate(page); + mocks.ReplayAll(); + + page.Results.Add( "theResult", theResult ); + page.SetResult("theResult"); + mocks.VerifyAll(); + } } } |
From: Mark P. <mar...@us...> - 2008-01-29 22:19:23
|
Update of /cvsroot/springnet/Spring.Net/src/Spring/Spring.Data/Data/Common In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv16065 Added Files: DelegatingDbProvider.cs Log Message: SPRNET-858 - Added IDbProvider implementation, UserCredentialsDbProvider, to allow changing of username, password connection strings at runtime --- NEW FILE: DelegatingDbProvider.cs --- (This appears to be a binary file; contents omitted.) |
From: Mark P. <mar...@us...> - 2008-01-29 20:27:45
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.NHibernate.Integration.Tests/Data/NHibernate In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv26106 Modified Files: templateTests.xml Log Message: misc updates for data/nh integration testing Index: templateTests.xml =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.NHibernate.Integration.Tests/Data/NHibernate/templateTests.xml,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** templateTests.xml 7 Aug 2007 19:50:49 -0000 1.3 --- templateTests.xml 29 Jan 2008 20:27:41 -0000 1.4 *************** *** 7,15 **** provider="SqlServer-1.1" connectionString="Data Source=(local);Database=Spring;User ID=springqa;Password=springqa;Trusted_Connection=False"/> - --> <db:provider id="DbProvider" provider="OracleODP-2.0" connectionString="Data Source=AGORA; User Id=agora_user; Password=welcome_bad"/> ! <object id="SessionFactory" type="Spring.Data.NHibernate.LocalSessionFactoryObject, Spring.Data.NHibernate"> --- 7,18 ---- provider="SqlServer-1.1" connectionString="Data Source=(local);Database=Spring;User ID=springqa;Password=springqa;Trusted_Connection=False"/> <db:provider id="DbProvider" provider="OracleODP-2.0" connectionString="Data Source=AGORA; User Id=agora_user; Password=welcome_bad"/> ! --> ! ! <db:provider id="DbProvider" ! provider="System.Data.SqlClient" ! connectionString="Data Source=MARKT60\SQL2005;Initial Catalog=Spring;User ID=springqa; Password=springqa"/> <object id="SessionFactory" type="Spring.Data.NHibernate.LocalSessionFactoryObject, Spring.Data.NHibernate"> *************** *** 31,42 **** <dictionary> ! <entry key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider"/> <entry key="hibernate.dialect" value="NHibernate.Dialect.Oracle9Dialect"/> ! ! <!-- <entry key="hibernate.dialect" value="NHibernate.Dialect.MsSql2000Dialect"/> --- 34,46 ---- <dictionary> ! <!-- ! <entry key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider"/> <entry key="hibernate.dialect" value="NHibernate.Dialect.Oracle9Dialect"/> ! --> ! <entry key="hibernate.dialect" value="NHibernate.Dialect.MsSql2000Dialect"/> *************** *** 44,48 **** <entry key="hibernate.connection.driver_class" value="NHibernate.Driver.SqlClientDriver"/> ! --> </dictionary> </property> --- 48,52 ---- <entry key="hibernate.connection.driver_class" value="NHibernate.Driver.SqlClientDriver"/> ! </dictionary> </property> |
From: Mark P. <mar...@us...> - 2008-01-29 20:27:38
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.NHibernate.Tests In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv26068/Spring.Data.NHibernate.Tests Modified Files: Spring.Data.NHibernate.Tests.2005.csproj Log Message: misc updates for data/nh integration testing Index: Spring.Data.NHibernate.Tests.2005.csproj =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.NHibernate.Tests/Spring.Data.NHibernate.Tests.2005.csproj,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** Spring.Data.NHibernate.Tests.2005.csproj 14 Sep 2007 15:45:51 -0000 1.6 --- Spring.Data.NHibernate.Tests.2005.csproj 29 Jan 2008 20:27:32 -0000 1.7 *************** *** 88,91 **** --- 88,92 ---- <Compile Include="Data\NHibernate\ISimpleService.cs" /> <Compile Include="Data\NHibernate\ITestObjectDao.cs" /> + <Compile Include="Data\NHibernate\LocalSessionFactoryObjectTests.cs" /> <Compile Include="Data\NHibernate\NHTestObjectDao.cs" /> <Compile Include="Data\NHibernate\SimpleService.cs" /> |
From: Mark P. <mar...@us...> - 2008-01-29 20:27:37
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.Integration.Tests In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv26068/Spring.Data.Integration.Tests Modified Files: Spring.Data.Integration.Tests.2005.csproj Spring.Data.Integration.Tests.dll.config Log Message: misc updates for data/nh integration testing Index: Spring.Data.Integration.Tests.dll.config =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.Integration.Tests/Spring.Data.Integration.Tests.dll.config,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** Spring.Data.Integration.Tests.dll.config 21 Aug 2007 19:25:55 -0000 1.5 --- Spring.Data.Integration.Tests.dll.config 29 Jan 2008 20:27:32 -0000 1.6 *************** *** 1,6 **** ! <?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <sectionGroup name="common"> <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" /> --- 1,8 ---- ! <?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> + <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" /> + <sectionGroup name="common"> <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" /> *************** *** 16,19 **** --- 18,22 ---- <factoryAdapter type="Common.Logging.Simple.ConsoleOutLoggerFactoryAdapter, Common.Logging"> + <arg key="level" value="INFO" /> </factoryAdapter> *************** *** 22,25 **** --- 25,29 ---- </common> + <spring> <parsers> *************** *** 27,30 **** --- 31,80 ---- </parsers> </spring> + <!-- + <common> + <logging> + <factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net"> + <arg key="configType" value="INLINE" /> + </factoryAdapter> + </logging> + </common> + --> + + <log4net> + <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender"> + <layout type="log4net.Layout.PatternLayout"> + <conversionPattern value="%-5level - %message%newline" /> + </layout> + </appender> + + <!-- Set default logging level to DEBUG --> + <root> + <level value="INFO" /> + <appender-ref ref="ConsoleAppender" /> + </root> + + + <!-- Set logging for Spring to INFO. + Logger names in Spring correspond to the namespace --> + + <logger name="Spring"> + <level value="INFO" /> + </logger> + + + <!-- + <logger name="Spring.Data"> + <level value="DEBUG" /> + </logger> + --> + + <!-- + <logger name="Spring.Transaction"> + <level value="DEBUG" /> + </logger> + --> + + + </log4net> </configuration> \ No newline at end of file Index: Spring.Data.Integration.Tests.2005.csproj =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.Integration.Tests/Spring.Data.Integration.Tests.2005.csproj,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** Spring.Data.Integration.Tests.2005.csproj 10 Oct 2007 20:59:29 -0000 1.24 --- Spring.Data.Integration.Tests.2005.csproj 29 Jan 2008 20:27:32 -0000 1.25 *************** *** 74,81 **** --- 74,89 ---- <HintPath>..\..\..\lib\Net\2.0\Common.Logging.dll</HintPath> </Reference> + <Reference Include="Common.Logging.Log4Net, Version=1.2.0.2, Culture=neutral, PublicKeyToken=af08829b84f0328e, processorArchitecture=MSIL"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\..\..\lib\Net\2.0\Common.Logging.Log4Net.dll</HintPath> + </Reference> <Reference Include="DotNetMock, Version=0.7.4.0, Culture=neutral, PublicKeyToken=805ea88df19095f6"> <SpecificVersion>False</SpecificVersion> <HintPath>..\..\..\lib\Net\2.0\DotNetMock.dll</HintPath> </Reference> + <Reference Include="log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821, processorArchitecture=MSIL"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\..\..\lib\Net\2.0\log4net.dll</HintPath> + </Reference> <Reference Include="nunit.framework, Version=2.2.5.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> *************** *** 93,96 **** --- 101,105 ---- <Name>System.Drawing</Name> </Reference> + <Reference Include="System.Transactions" /> <Reference Include="System.Xml"> <Name>System.XML</Name> *************** *** 121,124 **** --- 130,134 ---- <Compile Include="Data\AccountManager.cs" /> <Compile Include="Data\AdoDaoTests.cs" /> + <Compile Include="Data\AdoTemplatePerformanceTests.cs" /> <Compile Include="Data\AdoTemplateTests.cs" /> <Compile Include="Data\AutoDeclarativeTxTests.cs" /> *************** *** 152,155 **** --- 162,166 ---- <Compile Include="Data\Northwind\NativeAdoShipperDao.cs" /> <Compile Include="Data\Northwind\Shipper.cs" /> + <Compile Include="Data\SQLiteTests.cs" /> <Compile Include="Data\StoredProcedureTests.cs" /> <Compile Include="Data\Support\SimpleExceptionTranslationTests.cs" /> *************** *** 160,163 **** --- 171,175 ---- <Compile Include="Data\TestObjectStoredProcedure.cs" /> <Compile Include="Data\TransactionTemplateTests.cs" /> + <Compile Include="Data\NestedTxScopeTests.cs" /> </ItemGroup> <ItemGroup> |
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.NHibernate.Integration.Tests In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv26068/Spring.Data.NHibernate.Integration.Tests Modified Files: Spring.Data.NHibernate.Integration.Tests.2005.csproj Spring.Data.NHibernate.Integration.Tests.dll.config Log Message: misc updates for data/nh integration testing Index: Spring.Data.NHibernate.Integration.Tests.2005.csproj =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.NHibernate.Integration.Tests/Spring.Data.NHibernate.Integration.Tests.2005.csproj,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** Spring.Data.NHibernate.Integration.Tests.2005.csproj 14 Sep 2007 15:45:51 -0000 1.7 --- Spring.Data.NHibernate.Integration.Tests.2005.csproj 29 Jan 2008 20:27:32 -0000 1.8 *************** *** 64,67 **** --- 64,68 ---- <Compile Include="Data\NHibernate\AuditDao.cs" /> <Compile Include="Data\NHibernate\Credit.cs" /> + <Compile Include="Data\NHibernate\DbProviderTemplateTests.cs" /> <Compile Include="Data\NHibernate\Debit.cs" /> <Compile Include="Data\NHibernate\IAccountCreditDao.cs" /> *************** *** 83,86 **** --- 84,88 ---- </ItemGroup> <ItemGroup> + <EmbeddedResource Include="Data\NHibernate\dbProviderTemplateTests.xml" /> <Content Include="Data\NHibernate\Credit.hbm.xml" /> <Content Include="Data\NHibernate\creditdebit.sql" /> Index: Spring.Data.NHibernate.Integration.Tests.dll.config =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.NHibernate.Integration.Tests/Spring.Data.NHibernate.Integration.Tests.dll.config,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** Spring.Data.NHibernate.Integration.Tests.dll.config 6 Dec 2007 23:02:24 -0000 1.4 --- Spring.Data.NHibernate.Integration.Tests.dll.config 29 Jan 2008 20:27:32 -0000 1.5 *************** *** 10,14 **** </configSections> ! <!-- <common> <logging> --- 10,26 ---- </configSections> ! ! <common> ! <logging> ! ! <factoryAdapter type="Common.Logging.Simple.ConsoleOutLoggerFactoryAdapter, Common.Logging"> ! <arg key="level" value="DEBUG" /> ! ! </factoryAdapter> ! ! </logging> ! </common> ! ! <!-- <common> <logging> *************** *** 18,22 **** </logging> </common> ! --> <spring> <parsers> --- 30,35 ---- </logging> </common> ! --> ! <spring> <parsers> |
From: Mark P. <mar...@us...> - 2008-01-29 20:11:24
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Core.Tests In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv19749 Modified Files: Spring.Core.Tests.2005.csproj Log Message: add test to measure container performance (ignored by default) Index: Spring.Core.Tests.2005.csproj =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Core.Tests/Spring.Core.Tests.2005.csproj,v retrieving revision 1.71 retrieving revision 1.72 diff -C2 -d -r1.71 -r1.72 *** Spring.Core.Tests.2005.csproj 27 Jan 2008 20:43:33 -0000 1.71 --- Spring.Core.Tests.2005.csproj 29 Jan 2008 20:11:19 -0000 1.72 *************** *** 304,307 **** --- 304,308 ---- <Compile Include="Objects\Factory\Config\VariableAccessorTests.cs" /> <Compile Include="Objects\Factory\Config\VariablePlaceholderConfigurerTests.cs" /> + <Compile Include="Objects\Factory\DefaultListableObjectFactoryPerfTests.cs" /> <Compile Include="Objects\Factory\DummyConfigurableFactory.cs" /> <Compile Include="Objects\Factory\Support\ObjectDefinitionBuilderTests.cs" /> |
From: Mark P. <mar...@us...> - 2008-01-29 20:11:24
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Core.Tests/Objects/Factory In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv19749/Objects/Factory Added Files: DefaultListableObjectFactoryPerfTests.cs Log Message: add test to measure container performance (ignored by default) --- NEW FILE: DefaultListableObjectFactoryPerfTests.cs --- (This appears to be a binary file; contents omitted.) |
From: Mark P. <mar...@us...> - 2008-01-29 20:07:42
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.NHibernate.Tests/Data/NHibernate In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv18094 Modified Files: HibernateTransactionManagerTests.cs Log Message: misc test improvement. Index: HibernateTransactionManagerTests.cs =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.NHibernate.Tests/Data/NHibernate/HibernateTransactionManagerTests.cs,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** HibernateTransactionManagerTests.cs 7 Dec 2007 07:30:55 -0000 1.4 --- HibernateTransactionManagerTests.cs 29 Jan 2008 20:07:38 -0000 1.5 *************** *** 100,103 **** --- 100,104 ---- Assert.IsTrue(!TransactionSynchronizationManager.HasResource(provider), "Hasn't thread db provider"); Assert.IsTrue(!TransactionSynchronizationManager.SynchronizationActive, "Synchronizations not active"); + Assert.IsTrue(!TransactionSynchronizationManager.ActualTransactionActive, "Actual transaction not active"); object result = tt.Execute(new TransactionCommitTxCallback(sfProxy, provider)); *************** *** 108,111 **** --- 109,114 ---- Assert.IsTrue(!TransactionSynchronizationManager.HasResource(provider), "Hasn't thread db provider"); Assert.IsTrue(!TransactionSynchronizationManager.SynchronizationActive, "Synchronizations not active"); + Assert.IsTrue(!TransactionSynchronizationManager.ActualTransactionActive, "Actual transaction not active"); + mocks.VerifyAll(); |
From: Mark P. <mar...@us...> - 2008-01-29 20:07:25
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.NHibernate.Tests/Data/NHibernate In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv18078 Added Files: LocalSessionFactoryObjectTests.cs Log Message: SPRNET-841 - Add option to specify external hibernate configuration files (hibernate.cfg.xml) in LocalSessionFactoryObject --- NEW FILE: LocalSessionFactoryObjectTests.cs --- (This appears to be a binary file; contents omitted.) |
From: Mark P. <mar...@us...> - 2008-01-29 19:48:52
|
Update of /cvsroot/springnet/Spring.Net/src/Spring/Spring.Data.NHibernate/Data/NHibernate In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv10526 Modified Files: LocalSessionFactoryObject.cs Log Message: SPRNET-841 - Add option to specify external hibernate configuration files (hibernate.cfg.xml) in LocalSessionFactoryObject Index: LocalSessionFactoryObject.cs =================================================================== RCS file: /cvsroot/springnet/Spring.Net/src/Spring/Spring.Data.NHibernate/Data/NHibernate/LocalSessionFactoryObject.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** LocalSessionFactoryObject.cs 8 Aug 2007 17:47:37 -0000 1.3 --- LocalSessionFactoryObject.cs 29 Jan 2008 19:48:45 -0000 1.4 *************** *** 35,39 **** { /// <summary> ! /// An IFactoryObject that creates a local Hibernate SessionFactory instance. /// Behaves like a SessionFactory instance when used as bean reference, /// e.g. for HibernateTemplate's "SessionFactory" property. --- 35,39 ---- { /// <summary> ! /// An IFactoryObject that creates a local Hibernate SessionFactory instance. /// Behaves like a SessionFactory instance when used as bean reference, /// e.g. for HibernateTemplate's "SessionFactory" property. *************** *** 62,65 **** --- 62,67 ---- private string[] mappingResources; + private string[] configFilenames; + /// <summary> /// TODO: consider changing to NamevalueCollection for easier *************** *** 105,108 **** --- 107,118 ---- /// <summary> + /// Sets the hibernate configuration files to load, i.e. hibernate.cfg.xml. + /// </summary> + public string[] ConfigFilenames + { + set { configFilenames = value; } + } + + /// <summary> /// Sets the locations of Spring IResources that contain mapping /// files. *************** *** 220,227 **** if (this.dbProvider != null) { ! config.SetProperty(Environment.ConnectionString, ! dbProvider.ConnectionString); ! //TODO infer ConnectionDriver and ConnectionProvider from ! //dbProvider? } --- 230,235 ---- if (this.dbProvider != null) { ! config.SetProperty(Environment.ConnectionString, dbProvider.ConnectionString); ! } *************** *** 248,251 **** --- 256,267 ---- } + if (configFilenames != null) + { + foreach (string configFilename in configFilenames) + { + config.Configure(configFilename); + } + } + // Perform custom post-processing in subclasses. PostProcessConfiguration(config); *************** *** 264,269 **** public void Dispose() { ! log.Info("Closing Hibernate SessionFactory"); ! sessionFactory.Close(); } --- 280,293 ---- public void Dispose() { ! if (sessionFactory != null) ! { ! #region Instrumentation ! if (log.IsInfoEnabled) ! { ! log.Info("Closing Hibernate SessionFactory"); ! } ! #endregion ! sessionFactory.Close(); ! } } *************** *** 310,313 **** --- 334,338 ---- return config.BuildSessionFactory(); } + } } |
From: Mark P. <mar...@us...> - 2008-01-29 19:48:48
|
Update of /cvsroot/springnet/Spring.Net/src/Spring/Spring.Data.NHibernate12/Data/NHibernate In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv10515 Modified Files: LocalSessionFactoryObject.cs Log Message: SPRNET-841 - Add option to specify external hibernate configuration files (hibernate.cfg.xml) in LocalSessionFactoryObject Index: LocalSessionFactoryObject.cs =================================================================== RCS file: /cvsroot/springnet/Spring.Net/src/Spring/Spring.Data.NHibernate12/Data/NHibernate/LocalSessionFactoryObject.cs,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** LocalSessionFactoryObject.cs 30 Oct 2007 15:29:10 -0000 1.8 --- LocalSessionFactoryObject.cs 29 Jan 2008 19:48:40 -0000 1.9 *************** *** 62,65 **** --- 62,67 ---- private string[] mappingResources; + private string[] configFilenames; + /// <summary> /// TODO: consider changing to NamevalueCollection for easier *************** *** 89,94 **** /// <summary> /// Initializes a new instance of the <see cref="LocalSessionFactoryObject"/> class. ! /// </summary> ! public LocalSessionFactoryObject() { --- 91,96 ---- /// <summary> /// Initializes a new instance of the <see cref="LocalSessionFactoryObject"/> class. ! /// </summary> ! public LocalSessionFactoryObject() { *************** *** 109,112 **** --- 111,122 ---- /// <summary> + /// Sets the hibernate configuration files to load, i.e. hibernate.cfg.xml. + /// </summary> + public string[] ConfigFilenames + { + set { configFilenames = value; } + } + + /// <summary> /// Sets the locations of Spring IResources that contain mapping /// files. *************** *** 238,243 **** config.SetProperty(Environment.ConnectionString, dbProvider.ConnectionString); - //TODO infer ConnectionDriver and ConnectionProvider from - //dbProvider? } --- 248,251 ---- *************** *** 273,276 **** --- 281,292 ---- } + if (configFilenames != null) + { + foreach (string configFilename in configFilenames) + { + config.Configure(configFilename); + } + } + // Perform custom post-processing in subclasses. PostProcessConfiguration(config); *************** *** 289,294 **** public void Dispose() { ! log.Info("Closing Hibernate SessionFactory"); ! sessionFactory.Close(); } --- 305,319 ---- public void Dispose() { ! if (sessionFactory != null) ! { ! #region Instrumentation ! if (log.IsInfoEnabled) ! { ! log.Info("Closing Hibernate SessionFactory"); ! } ! #endregion ! sessionFactory.Close(); ! } ! } *************** *** 337,340 **** --- 362,366 ---- return config.BuildSessionFactory(); } + } } |
From: Mark P. <mar...@us...> - 2008-01-29 18:50:37
|
Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.Tests/Data/Common In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv19609/Data/Common Modified Files: DbProviderFactoryTests.cs Log Message: misc cleanup Index: DbProviderFactoryTests.cs =================================================================== RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.Tests/Data/Common/DbProviderFactoryTests.cs,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** DbProviderFactoryTests.cs 29 Jan 2008 18:18:17 -0000 1.11 --- DbProviderFactoryTests.cs 29 Jan 2008 18:50:32 -0000 1.12 *************** *** 59,63 **** #endregion ! private static string altConfig = "assembly://Spring.Data.Tests/Spring.Data.Common/AdditonalProviders.xml"; --- 59,63 ---- #endregion ! private static string altConfig = "assembly://Spring.Data.Tests/Spring.Data.Common/AdditionalProviders.xml"; |