You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
(248) |
May
(82) |
Jun
(90) |
Jul
(177) |
Aug
(253) |
Sep
(157) |
Oct
(151) |
Nov
(143) |
Dec
(278) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(152) |
Feb
(107) |
Mar
(177) |
Apr
(133) |
May
(259) |
Jun
(81) |
Jul
(119) |
Aug
(306) |
Sep
(416) |
Oct
(240) |
Nov
(329) |
Dec
(206) |
2006 |
Jan
(466) |
Feb
(382) |
Mar
(153) |
Apr
(162) |
May
(133) |
Jun
(21) |
Jul
(18) |
Aug
(37) |
Sep
(97) |
Oct
(114) |
Nov
(110) |
Dec
(28) |
2007 |
Jan
(74) |
Feb
(65) |
Mar
(49) |
Apr
(76) |
May
(43) |
Jun
(15) |
Jul
(68) |
Aug
(55) |
Sep
(63) |
Oct
(59) |
Nov
(70) |
Dec
(66) |
2008 |
Jan
(71) |
Feb
(60) |
Mar
(120) |
Apr
(31) |
May
(48) |
Jun
(81) |
Jul
(107) |
Aug
(51) |
Sep
(80) |
Oct
(83) |
Nov
(83) |
Dec
(79) |
2009 |
Jan
(83) |
Feb
(110) |
Mar
(97) |
Apr
(91) |
May
(291) |
Jun
(250) |
Jul
(197) |
Aug
(58) |
Sep
(54) |
Oct
(122) |
Nov
(68) |
Dec
(34) |
2010 |
Jan
(50) |
Feb
(17) |
Mar
(63) |
Apr
(61) |
May
(84) |
Jun
(81) |
Jul
(138) |
Aug
(144) |
Sep
(78) |
Oct
(26) |
Nov
(30) |
Dec
(61) |
2011 |
Jan
(33) |
Feb
(35) |
Mar
(166) |
Apr
(221) |
May
(109) |
Jun
(76) |
Jul
(27) |
Aug
(37) |
Sep
(1) |
Oct
(4) |
Nov
(2) |
Dec
(1) |
2012 |
Jan
|
Feb
|
Mar
(2) |
Apr
(2) |
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
(1) |
Oct
|
Nov
(1) |
Dec
|
2013 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
(3) |
Oct
(2) |
Nov
|
Dec
(1) |
2014 |
Jan
(1) |
Feb
(1) |
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Kevin W. <kev...@us...> - 2005-01-13 23:11:39
|
Update of /cvsroot/nhibernate/NHibernateContrib/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28959 Added Files: Bamboo.Prevalence.dll Bamboo.Prevalence.license.txt Log Message: adding pervalence cache provider --- NEW FILE: Bamboo.Prevalence.dll --- (This appears to be a binary file; contents omitted.) --- NEW FILE: Bamboo.Prevalence.license.txt --- #region license // Bamboo.Prevalence - a .NET object prevalence engine // Copyright (C) 2004 Rodrigo B. de Oliveira // // Based on the original concept and implementation of Prevayler (TM) // by Klaus Wuestefeld. Visit http://www.prevayler.org for details. // // Permission is hereby granted, free of charge, to any person // obtaining a copy of this software and associated documentation // files (the "Software"), to deal in the Software without restriction, // including without limitation the rights to use, copy, modify, merge, // publish, distribute, sublicense, and/or sell copies of the Software, // and to permit persons to whom the Software is furnished to do so, // subject to the following conditions: // // The above copyright notice and this permission notice shall be included // in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE // OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // // Contact Information // // http://bbooprevalence.sourceforge.net // mailto:rod...@us... #endregion |
Update of /cvsroot/nhibernate/NHibernateContrib/src/NHibernate.Caches.Prevalence In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28723 Added Files: AssemblyInfo.cs CacheEntry.cs CacheSystem.cs NHibernate.Caches.Prevalence-1.1.csproj NHibernate.Caches.Prevalence.Tests-1.1.csproj NHibernate.Caches.Prevalence.xml prevalencecache.build prevalencecache.config PrevalenceCache.cs prevalencecache.nunit PrevalenceCacheFixture.cs PrevalenceCacheProvider.cs PrevalenceCacheProviderFixture.cs Log Message: adding pervalence cache provider --- NEW FILE: CacheSystem.cs --- using System; using System.Collections.Specialized; using Bamboo.Prevalence; namespace NHibernate.Caches.Prevalence { /// <summary> /// Summary description for CacheSystem. /// </summary> [Serializable] internal class CacheSystem : MarshalByRefObject { private HybridDictionary _items; /// <summary> /// default constructor /// </summary> public CacheSystem() { _items = new HybridDictionary(); } /// <summary> /// retrieve the value for the given key /// </summary> /// <param name="key"></param> /// <returns></returns> public object Get( object key ) { CacheEntry entry = _items[key] as CacheEntry; if( entry == null ) { return null; } return entry.Value; } /// <summary> /// add or update an object in the cache /// </summary> /// <param name="key"></param> /// <param name="value"></param> public void Add( object key, object value ) { CacheEntry entry = _items[key] as CacheEntry; if( entry == null ) { entry = new CacheEntry(); entry.Key = key; entry.Value = value; entry.DateCreated = PrevalenceEngine.Now; _items.Add( key, entry ); } else { entry.Value = value; _items[key] = entry; } } /// <summary> /// remove an item from the cache /// </summary> /// <param name="key"></param> public void Remove( object key ) { _items.Remove( key ); } /// <summary> /// clear the cache /// </summary> public void Clear() { _items.Clear(); } } } --- NEW FILE: CacheEntry.cs --- using System; namespace NHibernate.Caches.Prevalence { /// <summary> /// An item in the cache /// </summary> [Serializable] public class CacheEntry { private object _key; private object _value; private DateTime _dateCreated; /// <summary> /// the unique identifier /// </summary> public object Key { get { return _key; } set { _key = value; } } /// <summary> /// the value /// </summary> public object Value { get { return _value; } set { _value = value; } } /// <summary> /// the unique timestamp /// </summary> public DateTime DateCreated { get { return _dateCreated; } set { _dateCreated = value; } } } } --- NEW FILE: PrevalenceCacheProvider.cs --- using System; using System.Collections; using System.Text; using log4net; using NHibernate.Cache; namespace NHibernate.Caches.Prevalence { /// <summary> /// Cache provider using <a href="http://bbooprevalence.sourceforge.net/">Bamboo Prevalence</a>, /// a Prevayler implementation in .NET. /// </summary> public class PrevalenceCacheProvider : ICacheProvider { private static readonly ILog log = LogManager.GetLogger( typeof( PrevalenceCacheProvider ) ); /// <summary> /// build and return a new cache implementation /// </summary> /// <param name="regionName"></param> /// <param name="properties"></param> /// <returns></returns> [CLSCompliant(false)] public ICache BuildCache( string regionName, IDictionary properties ) { if( regionName == null ) { regionName = ""; } if( properties == null ) { properties = new Hashtable(); } if( log.IsDebugEnabled ) { StringBuilder sb = new StringBuilder(); foreach( DictionaryEntry de in properties ) { sb.Append( "name=" ); sb.Append( de.Key.ToString() ); sb.Append( "&value=" ); sb.Append( de.Value.ToString() ); sb.Append( ";" ); } log.Debug( "building cache with region: " + regionName + ", properties: " + sb.ToString() ); } return new PrevalenceCache( regionName, properties ); } /// <summary></summary> /// <returns></returns> public long NextTimestamp() { return Timestamper.Next(); } } } --- NEW FILE: NHibernate.Caches.Prevalence.Tests-1.1.csproj --- <VisualStudioProject> <CSHARP ProjectType = "Local" ProductVersion = "7.10.3077" SchemaVersion = "2.0" ProjectGuid = "{C04709C0-2FF9-424A-82FF-235312877853}" > <Build> <Settings ApplicationIcon = "" AssemblyKeyContainerName = "" AssemblyName = "NHibernate.Caches.Prevalence.Tests" AssemblyOriginatorKeyFile = "" DefaultClientScript = "JScript" DefaultHTMLPageLayout = "Grid" DefaultTargetSchema = "IE50" DelaySign = "false" OutputType = "Library" PreBuildEvent = "" PostBuildEvent = "" RootNamespace = "NHibernate.Caches.Prevalence.Tests" RunPostBuildEvent = "OnBuildSuccess" StartupObject = "" > <Config Name = "Debug" AllowUnsafeBlocks = "false" BaseAddress = "285212672" CheckForOverflowUnderflow = "false" ConfigurationOverrideFile = "" DefineConstants = "DEBUG;TRACE" DocumentationFile = "" DebugSymbols = "true" FileAlignment = "4096" IncrementalBuild = "false" NoStdLib = "false" NoWarn = "" Optimize = "false" OutputPath = "bin\Debug\" RegisterForComInterop = "false" RemoveIntegerChecks = "false" TreatWarningsAsErrors = "false" WarningLevel = "4" /> <Config Name = "Release" AllowUnsafeBlocks = "false" BaseAddress = "285212672" CheckForOverflowUnderflow = "false" ConfigurationOverrideFile = "" DefineConstants = "TRACE" DocumentationFile = "" DebugSymbols = "false" FileAlignment = "4096" IncrementalBuild = "false" NoStdLib = "false" NoWarn = "" Optimize = "true" OutputPath = "bin\Release\" RegisterForComInterop = "false" RemoveIntegerChecks = "false" TreatWarningsAsErrors = "false" WarningLevel = "4" /> </Settings> <References> <Reference Name = "System" AssemblyName = "System" HintPath = "..\..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.dll" /> <Reference Name = "System.Data" AssemblyName = "System.Data" HintPath = "..\..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.Data.dll" /> <Reference Name = "System.XML" AssemblyName = "System.Xml" HintPath = "..\..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.XML.dll" /> <Reference Name = "nunit.framework" AssemblyName = "nunit.framework" HintPath = "..\..\lib\net\1.1\nunit.framework.dll" /> <Reference Name = "NHibernate.Caches.Prevalence-1.1" Project = "{51179C23-5555-45A4-9BBB-8F6E24D05C2B}" Package = "{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}" /> <Reference Name = "NHibernate" AssemblyName = "NHibernate" HintPath = "..\..\lib\net\1.1\NHibernate.dll" /> <Reference Name = "log4net" AssemblyName = "log4net" HintPath = "..\..\lib\net\1.1\log4net.dll" /> </References> </Build> <Files> <Include> <File RelPath = "AssemblyInfo.cs" SubType = "Code" BuildAction = "Compile" /> <File RelPath = "PrevalenceCacheFixture.cs" SubType = "Code" BuildAction = "Compile" /> <File RelPath = "PrevalenceCacheProviderFixture.cs" SubType = "Code" BuildAction = "Compile" /> </Include> </Files> </CSHARP> </VisualStudioProject> --- NEW FILE: NHibernate.Caches.Prevalence-1.1.csproj --- <VisualStudioProject> <CSHARP ProjectType = "Local" ProductVersion = "7.10.3077" SchemaVersion = "2.0" ProjectGuid = "{51179C23-5555-45A4-9BBB-8F6E24D05C2B}" > <Build> <Settings ApplicationIcon = "" AssemblyKeyContainerName = "" AssemblyName = "NHibernate.Caches.Prevalence" AssemblyOriginatorKeyFile = "" DefaultClientScript = "JScript" DefaultHTMLPageLayout = "Grid" DefaultTargetSchema = "IE50" DelaySign = "false" OutputType = "Library" PreBuildEvent = "" PostBuildEvent = "" RootNamespace = "NHibernate.Caches.Prevalence" RunPostBuildEvent = "OnBuildSuccess" StartupObject = "" > <Config Name = "Debug" AllowUnsafeBlocks = "false" BaseAddress = "285212672" CheckForOverflowUnderflow = "false" ConfigurationOverrideFile = "" DefineConstants = "DEBUG;TRACE" DocumentationFile = "" DebugSymbols = "true" FileAlignment = "4096" IncrementalBuild = "false" NoStdLib = "false" NoWarn = "" Optimize = "false" OutputPath = "bin\Debug\" RegisterForComInterop = "false" RemoveIntegerChecks = "false" TreatWarningsAsErrors = "false" WarningLevel = "4" /> <Config Name = "Release" AllowUnsafeBlocks = "false" BaseAddress = "285212672" CheckForOverflowUnderflow = "false" ConfigurationOverrideFile = "" DefineConstants = "TRACE" DocumentationFile = "" DebugSymbols = "false" FileAlignment = "4096" IncrementalBuild = "false" NoStdLib = "false" NoWarn = "" Optimize = "true" OutputPath = "bin\Release\" RegisterForComInterop = "false" RemoveIntegerChecks = "false" TreatWarningsAsErrors = "false" WarningLevel = "4" /> </Settings> <References> <Reference Name = "System" AssemblyName = "System" HintPath = "..\..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.dll" /> <Reference Name = "System.Data" AssemblyName = "System.Data" HintPath = "..\..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.Data.dll" /> <Reference Name = "System.XML" AssemblyName = "System.Xml" HintPath = "..\..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.XML.dll" /> <Reference Name = "Bamboo.Prevalence" AssemblyName = "Bamboo.Prevalence" HintPath = "..\..\lib\Bamboo.Prevalence.dll" /> <Reference Name = "log4net" AssemblyName = "log4net" HintPath = "..\..\lib\net\1.1\log4net.dll" /> <Reference Name = "NHibernate" AssemblyName = "NHibernate" HintPath = "..\..\lib\net\1.1\NHibernate.dll" /> </References> </Build> <Files> <Include> <File RelPath = "AssemblyInfo.cs" SubType = "Code" BuildAction = "Compile" /> <File RelPath = "CacheEntry.cs" SubType = "Code" BuildAction = "Compile" /> <File RelPath = "CacheSystem.cs" SubType = "Code" BuildAction = "Compile" /> <File RelPath = "PrevalenceCache.cs" SubType = "Code" BuildAction = "Compile" /> <File RelPath = "PrevalenceCacheProvider.cs" SubType = "Code" BuildAction = "Compile" /> </Include> </Files> </CSHARP> </VisualStudioProject> --- NEW FILE: NHibernate.Caches.Prevalence.xml --- <?xml version="1.0"?> <doc> <assembly> <name>NHibernate.Caches.Prevalence</name> </assembly> <members> <member name="T:NHibernate.Caches.Prevalence.CacheEntry"> <summary> An item in the cache </summary> </member> <member name="P:NHibernate.Caches.Prevalence.CacheEntry.Key"> <summary> the unique identifier </summary> </member> <member name="P:NHibernate.Caches.Prevalence.CacheEntry.Value"> <summary> the value </summary> </member> <member name="P:NHibernate.Caches.Prevalence.CacheEntry.DateCreated"> <summary> the unique timestamp </summary> </member> <member name="T:NHibernate.Caches.Prevalence.CacheSystem"> <summary> Summary description for CacheSystem. </summary> </member> <member name="M:NHibernate.Caches.Prevalence.CacheSystem.#ctor"> <summary> default constructor </summary> </member> <member name="M:NHibernate.Caches.Prevalence.CacheSystem.Get(System.Object)"> <summary> retrieve the value for the given key </summary> <param name="key"></param> <returns></returns> </member> <member name="M:NHibernate.Caches.Prevalence.CacheSystem.Add(System.Object,System.Object)"> <summary> add or update an object in the cache </summary> <param name="key"></param> <param name="value"></param> </member> <member name="M:NHibernate.Caches.Prevalence.CacheSystem.Remove(System.Object)"> <summary> remove an item from the cache </summary> <param name="key"></param> </member> <member name="M:NHibernate.Caches.Prevalence.CacheSystem.Clear"> <summary> clear the cache </summary> </member> <member name="T:NHibernate.Caches.Prevalence.PrevalenceCache"> <summary> Summary description for PrevalenceCache. </summary> </member> <member name="M:NHibernate.Caches.Prevalence.PrevalenceCache.#ctor"> <summary> default constructor </summary> </member> <member name="M:NHibernate.Caches.Prevalence.PrevalenceCache.#ctor(System.String)"> <summary> constructor with no properties </summary> <param name="region"></param> </member> <member name="M:NHibernate.Caches.Prevalence.PrevalenceCache.#ctor(System.String,System.Collections.IDictionary)"> <summary> full constructor </summary> <param name="region"></param> <param name="properties">cache configuration properties</param> <remarks>There is only one configurable parameter: prevalenceBase. This is the directory on the file system where the Prevalence engine will save data. It can be relative to the current directory or a full path. If the directory doesn't exist, it will be created.</remarks> </member> <member name="M:NHibernate.Caches.Prevalence.PrevalenceCache.Get(System.Object)"> <summary></summary> <param name="key"></param> <returns></returns> </member> <member name="M:NHibernate.Caches.Prevalence.PrevalenceCache.Put(System.Object,System.Object)"> <summary></summary> <param name="key"></param> <param name="value"></param> </member> <member name="M:NHibernate.Caches.Prevalence.PrevalenceCache.Remove(System.Object)"> <summary></summary> <param name="key"></param> </member> <member name="M:NHibernate.Caches.Prevalence.PrevalenceCache.Clear"> <summary></summary> </member> <member name="M:NHibernate.Caches.Prevalence.PrevalenceCache.Destroy"> <summary></summary> </member> <member name="M:NHibernate.Caches.Prevalence.PrevalenceCache.Dispose"> <summary> take snapshot before shutting down </summary> </member> <member name="P:NHibernate.Caches.Prevalence.PrevalenceCache.Region"> <summary></summary> </member> <member name="T:NHibernate.Caches.Prevalence.PrevalenceCacheProvider"> <summary> Cache provider using <a href="http://bbooprevalence.sourceforge.net/">Bamboo Prevalence</a>, a Prevayler implementation in .NET. </summary> </member> <member name="M:NHibernate.Caches.Prevalence.PrevalenceCacheProvider.BuildCache(System.String,System.Collections.IDictionary)"> <summary> build and return a new cache implementation </summary> <param name="regionName"></param> <param name="properties"></param> <returns></returns> </member> <member name="M:NHibernate.Caches.Prevalence.PrevalenceCacheProvider.NextTimestamp"> <summary></summary> <returns></returns> </member> </members> </doc> --- NEW FILE: prevalencecache.build --- <?xml version="1.0"?> <project name="NHibernate.Caches.Prevalence" default="build" description="NHibernate pluggable cache provider using Bamboo.Prevalence engine" xmlns="http://nant.sourceforge.net/schemas/nant-0.84.win32.net-1.0.xsd"> <!-- Required properties: * build.dir - (path) root level to build to, assemblies will go in ${build.dir}/bin * build.debug - (true|false) debug build? * current.build.defines - framework-specific build defines * project.version - full project version * project.version.major - the major number of the build * project.version.minor - the minor number of the build * project.version.build - the build number * sign - (true|false)indicates if the Assembly should be signed. * clover.enabled - (true|false) indicates if Clover.NET should handle the build * clover.src - location of the clovered source to be stored at from the root of NHibernateContrib * clover.db - location of the coverage db from the root of NHibernateContrib --> <if propertytrue="clover.enabled"> <loadtasks assembly="${clover.home}/CloverNAnt-0.84.dll" /> </if> <property name="keyFile" value="..\NHibernate.snk" /> <target name="build"> <if propertytrue="clover.enabled"> <clover-setup initstring="..\..\${clover.db}" builddir="..\..\${clover.src}\${nant.project.name}" enabled="${clover.enabled}" flushinterval="1000" /> </if> <attrib file="AssemblyInfo.cs" readonly="false" /> <asminfo output="AssemblyInfo.cs" language="CSharp"> <imports> <import name="System" /> <import name="System.Reflection" /> <import name="System.Runtime.CompilerServices" /> <import name="System.Runtime.InteropServices" /> <import name="System.Security.Permissions" /> </imports> <attributes> <attribute type="AssemblyTitleAttribute" value="${nant.project.name} for ${current.runtime.description}" /> <attribute type="AssemblyDescriptionAttribute" value="Cache provider for NHibernate using Bamboo.Prevalence engine." /> <attribute type="AssemblyCompanyAttribute" value="nhibernate.sourceforge.net" /> <attribute type="AssemblyProductAttribute" value="${nant.project.name}" /> <attribute type="AssemblyCopyrightAttribute" value="Licensed under LGPL." /> <attribute type="AssemblyVersionAttribute" value="${project.version}" /> <attribute type="AssemblyInformationalVersionAttribute" value="${project.version.major}.${project.version.minor}" /> <attribute type="AssemblyKeyFileAttribute" value="${keyFile}" if="${sign}" /> </attributes> </asminfo> <csc output="${build.dir}/bin/${nant.project.name}.dll" doc="${build.dir}/bin/${nant.project.name}.xml" target="library" debug="${build.debug}" define="${current.build.defines}" optimize="true" > <sources> <excludes name="**/*Fixture.cs" /> <includes name="**/*.cs" /> </sources> <references> <includes name="System.dll" /> <includes name="System.Data.dll" /> <includes name="System.Web.dll" /> <includes name="System.XML.dll" /> <includes name="${build.dir}/bin/NHibernate.dll" /> <includes name="${build.dir}/bin/log4net.dll" /> <includes name="${build.dir}/bin/Bamboo.Prevalence.dll" /> </references> </csc> <csc output="${build.dir}/bin/${nant.project.name}.Tests.dll" target="library" debug="${build.debug}" define="${current.build.defines}" optimize="true" > <sources> <includes name="**/AssemblyInfo.cs" /> <includes name="**/*Fixture.cs" /> </sources> <references> <includes name="System.dll" /> <includes name="System.Data.dll" /> <includes name="System.XML.dll" /> <includes name="${build.dir}/bin/${nant.project.name}.dll" /> <includes name="${build.dir}/bin/NHibernate.dll" /> <includes name="${build.dir}/bin/nunit.framework.dll" /> <includes name="${build.dir}/bin/log4net.dll" /> <includes name="${build.dir}/bin/Bamboo.Prevalence.dll" /> </references> </csc> </target> <target name="test" depends="build" description="run unit tests"> <copy file="prevalencecache.config" tofile="${build.dir}/bin/${nant.project.name}.Tests.dll.config" /> <nunit2 failonerror="false"> <formatter type="Xml" usefile="true" extension=".xml" outputdir="${build.dir}/bin" /> <test assemblyname="${build.dir}/bin/${nant.project.name}.Tests.dll" appconfig="${build.dir}/${nant.project.name}.Tests.dll.config" /> </nunit2> <if propertytrue="nunit2report.installed"> <mkdir dir="${build.dir}/testresults" /> <nunit2report out="${build.dir}/testresults/prevalencecache.html" todir="${build.dir}/testresults"> <fileset> <includes name="${build.dir}\bin\${nant.project.name}.Tests.dll-results.xml" /> </fileset> </nunit2report> </if> </target> </project> --- NEW FILE: PrevalenceCacheFixture.cs --- using System; using System.Collections; using NHibernate.Cache; using NUnit.Framework; namespace NHibernate.Caches.Prevalence.Tests { [TestFixture] public class PrevalenceCacheFixture { private PrevalenceCacheProvider provider; private Hashtable props; [TestFixtureSetUp] public void FixtureSetup() { log4net.Config.DOMConfigurator.Configure(); props = new Hashtable(); provider = new PrevalenceCacheProvider(); } [Test] public void TestPut() { string key = "key1"; string value = "value"; ICache cache = provider.BuildCache( "nunit", props ); Assert.IsNotNull( cache, "no cache returned" ); Assert.IsNull( cache.Get( key ), "cache returned an item we didn't add !?!" ); cache.Put( key, value ); object item = cache.Get( key ); Assert.IsNotNull( item ); Assert.AreEqual( value, item, "didn't return the item we added" ); } [Test] public void TestRemove() { string key = "key1"; string value = "value"; ICache cache = provider.BuildCache( "nunit", props ); Assert.IsNotNull( cache, "no cache returned" ); // add the item cache.Put( key, value ); // make sure it's there object item = cache.Get( key ); Assert.IsNotNull( item, "item just added is not there" ); // remove it cache.Remove( key ); // make sure it's not there item = cache.Get( key ); Assert.IsNull( item, "item still exists in cache" ); } [Test] public void TestClear() { string key = "key1"; string value = "value"; ICache cache = provider.BuildCache( "nunit", props ); Assert.IsNotNull( cache, "no cache returned" ); // add the item cache.Put( key, value ); // make sure it's there object item = cache.Get( key ); Assert.IsNotNull( item, "couldn't find item in cache" ); // clear the cache cache.Clear(); // make sure we don't get an item item = cache.Get( key ); Assert.IsNull( item, "item still exists in cache" ); } [Test] public void TestDefaultConstructor() { ICache cache = new PrevalenceCache(); Assert.IsNotNull( cache ); } [Test] public void TestNoPropertiesConstructor() { ICache cache = new PrevalenceCache( "nunit" ); Assert.IsNotNull( cache ); } [Test] public void TestEmptyProperties() { ICache cache = new PrevalenceCache( "nunit", new Hashtable() ); Assert.IsNotNull( cache ); } [Test] [ExpectedException( typeof( ArgumentNullException ) )] public void TestNullKeyPut() { ICache cache = new PrevalenceCache(); cache.Put( null, null ); } [Test] [ExpectedException( typeof( ArgumentNullException ) )] public void TestNullValuePut() { ICache cache = new PrevalenceCache(); cache.Put( "nunit", null ); } [Test] public void TestNullKeyGet() { ICache cache = new PrevalenceCache(); cache.Put( "nunit", "value" ); object item = cache.Get( null ); Assert.IsNull( item ); } [Test] [ExpectedException( typeof( ArgumentNullException ) )] public void TestNullKeyRemove() { ICache cache = new PrevalenceCache(); cache.Remove( null ); } } } --- NEW FILE: prevalencecache.nunit --- <NUnitProject> <Settings activeconfig="Debug"/> <Config name="Debug"> <assembly path="bin\Debug\NHibernate.Caches.Prevalence.Tests.dll"/> </Config> <Config name="Release"> <assembly path="bin\Release\NHibernate.Caches.Prevalence.Tests.dll"/> </Config> </NUnitProject> --- NEW FILE: prevalencecache.config --- <?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <section name="nhibernate" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089" /> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" /> </configSections> <nhibernate> <!-- <add key="hibernate.connection.pool_size" value="2" /> <add key="hibernate.use_outer_join" value="false" /> --> <!-- The valid strings for Isolation can be found in the documentation for the System.Data.IsolationLevel Enumeration documentation. Use the member names - not the values. --> <!--add key="hibernate.connection.isolation" value="ReadCommitted" /--> <add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" /> <add key="hibernate.dialect" value="NHibernate.Dialect.MsSql2000Dialect" /> <add key="hibernate.connection.driver_class" value="NHibernate.Driver.SqlClientDriver" /> <add key="hibernate.connection.connection_string" value="Server=localhost;initial catalog=nhibernate;Integrated Security=SSPI" /> <add key="hibernate.cache.provider_class" value="NHibernate.Caches.Prevalence.PrevalenceCacheProvider,NHibernate.Caches.Prevalence" /> <add key="hibernate.cache.use_query_cache" value="true" /> </nhibernate> <log4net> <appender name="myFile" type="log4net.Appender.FileAppender,log4net" > <param name="File" value="log.txt" /> <param name="AppendToFile" value="false" /> <layout type="log4net.Layout.PatternLayout,log4net"> <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] <%X{auth}> - %m%n" /> </layout> </appender> <root> <priority value="DEBUG" /> <appender-ref ref="myFile" /> </root> <logger name="NHibernate"> <level value="WARN" /> </logger> </log4net> </configuration> --- NEW FILE: PrevalenceCacheProviderFixture.cs --- using System; using System.Collections; using System.IO; using NHibernate.Cache; using NUnit.Framework; namespace NHibernate.Caches.Prevalence.Tests { [TestFixture] public class PrevalenceCacheProviderFixture { private PrevalenceCacheProvider provider; private Hashtable props; private string testDir; [TestFixtureSetUp] public void FixtureSetup() { log4net.Config.DOMConfigurator.Configure(); props = new Hashtable(); testDir = @"C:\temp\prevalence"; props.Add( "prevalenceBase", testDir ); } [SetUp] public void Setup() { provider = new PrevalenceCacheProvider(); } [TearDown] public void Teardown() { if( Directory.Exists( testDir ) ) { Directory.Delete( testDir ); } } [Test] public void TestBuildCacheNullNull() { ICache cache = provider.BuildCache( null, null ); Assert.IsNotNull( cache, "no cache returned" ); } [Test] public void TestBuildCacheStringNull() { ICache cache = provider.BuildCache( "a_region", null ); Assert.IsNotNull( cache, "no cache returned" ); } [Test] public void TestBuildCacheStringICollection() { Assert.IsFalse( Directory.Exists( testDir ) ); ICache cache = provider.BuildCache( "another_region", props ); Assert.IsTrue( Directory.Exists( testDir ) ); Assert.IsNotNull( cache, "no cache returned" ); } [Test] public void TestNextTimestamp() { long ts = provider.NextTimestamp(); Assert.IsNotNull( ts, "no timestamp returned" ); } } } --- NEW FILE: AssemblyInfo.cs --- using System; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Security.Permissions; //------------------------------------------------------------------------------ // <autogenerated> // This code was generated by a tool. // Runtime Version: 1.1.4322.2032 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // </autogenerated> //------------------------------------------------------------------------------ [assembly: AssemblyTitleAttribute("NHibernate.Caches.Prevalence for Microsoft .NET Framework 1.1")] [assembly: AssemblyDescriptionAttribute("Cache provider for NHibernate using Bamboo.Prevalence engine.")] [assembly: AssemblyCompanyAttribute("nhibernate.sourceforge.net")] [assembly: AssemblyProductAttribute("NHibernate.Caches.Prevalence")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] [assembly: AssemblyVersionAttribute("0.6.0.0")] [assembly: AssemblyInformationalVersionAttribute("0.6")] --- NEW FILE: PrevalenceCache.cs --- using System; using System.Collections; using System.IO; using Bamboo.Prevalence; using log4net; using NHibernate.Cache; namespace NHibernate.Caches.Prevalence { /// <summary> /// Summary description for PrevalenceCache. /// </summary> public class PrevalenceCache : ICache, IDisposable { private static readonly ILog log = LogManager.GetLogger( typeof( PrevalenceCache ) ); private string _region; private PrevalenceEngine _engine; private CacheSystem _system; /// <summary> /// default constructor /// </summary> public PrevalenceCache() : this( null, null ) { } /// <summary> /// constructor with no properties /// </summary> /// <param name="region"></param> public PrevalenceCache( string region ) : this( region, null ) { } /// <summary> /// full constructor /// </summary> /// <param name="region"></param> /// <param name="properties">cache configuration properties</param> /// <remarks>There is only one configurable parameter: prevalenceBase. This is /// the directory on the file system where the Prevalence engine will save data. /// It can be relative to the current directory or a full path. If the directory /// doesn't exist, it will be created.</remarks> public PrevalenceCache( string region, IDictionary properties ) { _region = region; Configure( properties ); } private void Configure( IDictionary properties ) { string dataDir = Path.Combine( Environment.CurrentDirectory, "data" ); if( properties != null ) { if( properties["prevalenceBase"] != null ) { string prevalenceBase = properties["prevalenceBase"].ToString(); if( Path.IsPathRooted( prevalenceBase ) ) { dataDir = prevalenceBase; } else { dataDir = Path.Combine( Environment.CurrentDirectory, prevalenceBase ); } } } if( Directory.Exists( dataDir ) == false ) { if( log.IsDebugEnabled ) { log.Debug( String.Format( "Data directory {0} doesn't exist: creating it.", dataDir ) ); } Directory.CreateDirectory( dataDir ); } if( log.IsDebugEnabled ) { log.Debug( String.Format( "configuring cache in {0}.", dataDir ) ); } _engine = PrevalenceActivator.CreateTransparentEngine( typeof( CacheSystem ), dataDir ); _system = _engine.PrevalentSystem as CacheSystem; } /// <summary></summary> /// <param name="key"></param> /// <returns></returns> public object Get( object key ) { if( key == null ) { return null; } if( log.IsDebugEnabled ) { log.Debug( "getting object with key: " + key.ToString() ); } return _system.Get( key ); } /// <summary></summary> /// <param name="key"></param> /// <param name="value"></param> public void Put( object key, object value ) { if( key == null ) { if( log.IsErrorEnabled ) { log.Error( "null key passed to 'Put'" ); } throw new ArgumentNullException( "key", "null key not allowed" ); } if( value == null ) { if( log.IsErrorEnabled ) { log.Error( "null value passed to 'Put'" ); } throw new ArgumentNullException( "value", "null value not allowed" ); } if( log.IsDebugEnabled ) { log.Debug( String.Format( "setting value {1} for key {0}", key.ToString(), value.ToString() ) ); } _system.Add( key, value ); } /// <summary></summary> /// <param name="key"></param> public void Remove( object key ) { if( key == null ) { if( log.IsErrorEnabled ) { log.Error( "null key passed to 'Remove'" ); } throw new ArgumentNullException( "key" ); } if( log.IsDebugEnabled ) { log.Debug( "removing item with key: " + key.ToString() ); } _system.Remove( key ); } /// <summary></summary> public void Clear() { if( log.IsInfoEnabled ) { log.Info( "clearing all objects from system" ); } _system.Clear(); } /// <summary></summary> public void Destroy() { if( log.IsInfoEnabled ) { log.Info( "'Destroy' was called" ); } Clear(); } /// <summary></summary> public string Region { set { _region = value; } } #region IDisposable Members /// <summary> /// take snapshot before shutting down /// </summary> public void Dispose() { _engine.TakeSnapshot(); } #endregion } } |
From: Kevin W. <kev...@us...> - 2005-01-13 23:09:55
|
Update of /cvsroot/nhibernate/NHibernateContrib/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28455 Modified Files: NHibernateContrib-1.1.sln Log Message: adding pervalence cache provider Index: NHibernateContrib-1.1.sln =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/src/NHibernateContrib-1.1.sln,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** NHibernateContrib-1.1.sln 30 Dec 2004 16:55:37 -0000 1.2 --- NHibernateContrib-1.1.sln 13 Jan 2005 23:09:44 -0000 1.3 *************** *** 32,35 **** --- 32,43 ---- EndProjectSection EndProject + Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NHibernate.Caches.Prevalence-1.1", "NHibernate.Caches.Prevalence\NHibernate.Caches.Prevalence-1.1.csproj", "{51179C23-5555-45A4-9BBB-8F6E24D05C2B}" + ProjectSection(ProjectDependencies) = postProject + EndProjectSection + EndProject + Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NHibernate.Caches.Prevalence.Tests-1.1", "NHibernate.Caches.Prevalence\NHibernate.Caches.Prevalence.Tests-1.1.csproj", "{C04709C0-2FF9-424A-82FF-235312877853}" + ProjectSection(ProjectDependencies) = postProject + EndProjectSection + EndProject Global GlobalSection(SolutionConfiguration) = preSolution *************** *** 70,73 **** --- 78,89 ---- {C6F085E3-17FA-424A-9A09-143F3E177FEB}.Release.ActiveCfg = Release|.NET {C6F085E3-17FA-424A-9A09-143F3E177FEB}.Release.Build.0 = Release|.NET + {51179C23-5555-45A4-9BBB-8F6E24D05C2B}.Debug.ActiveCfg = Debug|.NET + {51179C23-5555-45A4-9BBB-8F6E24D05C2B}.Debug.Build.0 = Debug|.NET + {51179C23-5555-45A4-9BBB-8F6E24D05C2B}.Release.ActiveCfg = Release|.NET + {51179C23-5555-45A4-9BBB-8F6E24D05C2B}.Release.Build.0 = Release|.NET + {C04709C0-2FF9-424A-82FF-235312877853}.Debug.ActiveCfg = Debug|.NET + {C04709C0-2FF9-424A-82FF-235312877853}.Debug.Build.0 = Debug|.NET + {C04709C0-2FF9-424A-82FF-235312877853}.Release.ActiveCfg = Release|.NET + {C04709C0-2FF9-424A-82FF-235312877853}.Release.Build.0 = Release|.NET EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution |
From: Kevin W. <kev...@us...> - 2005-01-13 23:09:21
|
Update of /cvsroot/nhibernate/NHibernateContrib/src/NHibernate.Caches.Prevalence In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28305/NHibernate.Caches.Prevalence Log Message: Directory /cvsroot/nhibernate/NHibernateContrib/src/NHibernate.Caches.Prevalence added to the repository |
From: Kevin W. <kev...@us...> - 2005-01-13 23:07:34
|
Update of /cvsroot/nhibernate/NHibernateContrib/src/BantamTech.SysCache In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27915 Modified Files: syscache.config SysCacheFixture.cs SysCacheProvider.cs Log Message: minor cleanup Index: SysCacheFixture.cs =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/src/BantamTech.SysCache/SysCacheFixture.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** SysCacheFixture.cs 8 Dec 2004 08:02:40 -0000 1.2 --- SysCacheFixture.cs 13 Jan 2005 23:07:23 -0000 1.3 *************** *** 133,137 **** Hashtable h = new Hashtable(); h.Add( "priority", 7 ); ! ICache cache = new SysCache( "nunit", h ); } --- 133,137 ---- Hashtable h = new Hashtable(); h.Add( "priority", 7 ); ! new SysCache( "nunit", h ); } *************** *** 143,147 **** h.Add( "staticExpiration", DateTime.Now ); h.Add( "relativeExpiration", 300 ); ! ICache cache = new SysCache( "nunit", h ); } --- 143,147 ---- h.Add( "staticExpiration", DateTime.Now ); h.Add( "relativeExpiration", 300 ); ! new SysCache( "nunit", h ); } *************** *** 152,156 **** Hashtable h = new Hashtable(); h.Add( "staticExpiration", DateTime.Parse( "1/1/1980") ); ! ICache cache = new SysCache( "nunit", h ); } --- 152,156 ---- Hashtable h = new Hashtable(); h.Add( "staticExpiration", DateTime.Parse( "1/1/1980") ); ! new SysCache( "nunit", h ); } *************** *** 161,165 **** Hashtable h = new Hashtable(); h.Add( "staticExpiration", "foobar" ); ! ICache cache = new SysCache( "nunit", h ); } --- 161,165 ---- Hashtable h = new Hashtable(); h.Add( "staticExpiration", "foobar" ); ! new SysCache( "nunit", h ); } *************** *** 170,174 **** Hashtable h = new Hashtable(); h.Add( "relativeExpiration", "foobar" ); ! ICache cache = new SysCache( "nunit", h ); } --- 170,174 ---- Hashtable h = new Hashtable(); h.Add( "relativeExpiration", "foobar" ); ! new SysCache( "nunit", h ); } Index: syscache.config =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/src/BantamTech.SysCache/syscache.config,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** syscache.config 7 Dec 2004 19:59:16 -0000 1.1 --- syscache.config 13 Jan 2005 23:07:23 -0000 1.2 *************** *** 22,26 **** <add key="hibernate.dialect" value="NHibernate.Dialect.MsSql2000Dialect" /> <add key="hibernate.connection.driver_class" value="NHibernate.Driver.SqlClientDriver" /> ! <add key="hibernate.connection.connection_string" value="Server=localhost;initial catalog=pubs;Integrated Security=SSPI" /> <add key="hibernate.cache.provider_class" value="BantamTech.SysCache.SysCacheProvider,BantamTech.SysCache" /> <add key="hibernate.cache.use_query_cache" value="true" /> --- 22,26 ---- <add key="hibernate.dialect" value="NHibernate.Dialect.MsSql2000Dialect" /> <add key="hibernate.connection.driver_class" value="NHibernate.Driver.SqlClientDriver" /> ! <add key="hibernate.connection.connection_string" value="Server=localhost;initial catalog=nhibernate;Integrated Security=SSPI" /> <add key="hibernate.cache.provider_class" value="BantamTech.SysCache.SysCacheProvider,BantamTech.SysCache" /> <add key="hibernate.cache.use_query_cache" value="true" /> Index: SysCacheProvider.cs =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/src/BantamTech.SysCache/SysCacheProvider.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** SysCacheProvider.cs 7 Dec 2004 19:59:16 -0000 1.1 --- SysCacheProvider.cs 13 Jan 2005 23:07:23 -0000 1.2 *************** *** 47,60 **** public ICache BuildCache( string regionName, IDictionary properties ) { if( log.IsDebugEnabled ) { - if( regionName == null ) - { - regionName = ""; - } - if( properties == null ) - { - properties = new Hashtable(); - } StringBuilder sb = new StringBuilder(); foreach( DictionaryEntry de in properties ) --- 47,60 ---- public ICache BuildCache( string regionName, IDictionary properties ) { + if( regionName == null ) + { + regionName = ""; + } + if( properties == null ) + { + properties = new Hashtable(); + } if( log.IsDebugEnabled ) { StringBuilder sb = new StringBuilder(); foreach( DictionaryEntry de in properties ) |
From: Kevin W. <kev...@us...> - 2005-01-13 23:07:00
|
Update of /cvsroot/nhibernate/NHibernateContrib/src/NHibernate.Tool.hbm2net In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27782 Modified Files: SupportClass.cs Log Message: fix compiler warning Index: SupportClass.cs =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/src/NHibernate.Tool.hbm2net/SupportClass.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** SupportClass.cs 30 Dec 2004 16:54:54 -0000 1.1 --- SupportClass.cs 13 Jan 2005 23:06:48 -0000 1.2 *************** *** 273,277 **** /// <param name="valueToInsert">The value to insert in the array list.</param> /// <returns>Returns true after adding the value.</returns> ! public virtual bool Add(Object valueToInsert) { base.Insert(this.Count, valueToInsert); --- 273,277 ---- /// <param name="valueToInsert">The value to insert in the array list.</param> /// <returns>Returns true after adding the value.</returns> ! public new virtual bool Add(Object valueToInsert) { base.Insert(this.Count, valueToInsert); |
From: Michael D. <mik...@us...> - 2005-01-13 20:55:39
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate/Property In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29445/NHibernate/Property Modified Files: BasicGetter.cs BasicPropertyAccessor.cs BasicSetter.cs FieldGetter.cs FieldSetter.cs IGetter.cs IPropertyAccessor.cs ISetter.cs NoSetterAccessor.cs Log Message: Fixed typo in Getter/Setter error messages. Added some xml comments. Index: NoSetterAccessor.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Property/NoSetterAccessor.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** NoSetterAccessor.cs 31 Dec 2004 21:56:35 -0000 1.2 --- NoSetterAccessor.cs 13 Jan 2005 20:55:16 -0000 1.3 *************** *** 1,6 **** namespace NHibernate.Property { /// <summary> ! /// Access the Property through the <c>get</c> to get the value /// and go directly to the Field to set the value. /// </summary> --- 1,8 ---- + using System; + namespace NHibernate.Property { /// <summary> ! /// Access the mapped property through a Property <c>get</c> to get the value /// and go directly to the Field to set the value. /// </summary> *************** *** 15,21 **** /// <summary> ! /// /// </summary> ! /// <param name="namingStrategy"></param> public NoSetterAccessor( IFieldNamingStrategy namingStrategy ) { --- 17,23 ---- /// <summary> ! /// Initializes a new instance of <see cref="NoSetterAccessor"/>. /// </summary> ! /// <param name="namingStrategy">The <see cref="IFieldNamingStrategy"/> to use.</param> public NoSetterAccessor( IFieldNamingStrategy namingStrategy ) { *************** *** 26,34 **** /// <summary> ! /// /// </summary> ! /// <param name="theClass"></param> ! /// <param name="propertyName"></param> ! /// <returns></returns> public IGetter GetGetter( System.Type theClass, string propertyName ) { --- 28,42 ---- /// <summary> ! /// Creates an <see cref="BasicGetter"/> to <c>get</c> the value from the Property. /// </summary> ! /// <param name="theClass">The <see cref="System.Type"/> to find the Property in.</param> ! /// <param name="propertyName">The name of the Property to get.</param> ! /// <returns> ! /// The <see cref="BasicGetter"/> to use to get the value of the Property from an ! /// instance of the <see cref="System.Type"/>.</returns> ! /// <exception cref="PropertyNotFoundException" > ! /// Thrown when a Property specified by the <c>propertyName</c> could not ! /// be found in the <see cref="System.Type"/>. ! /// </exception> public IGetter GetGetter( System.Type theClass, string propertyName ) { *************** *** 36,40 **** if( result == null ) { ! throw new PropertyNotFoundException( "Could not find a setter for property " + propertyName + " in class " + theClass.FullName ); } return result; --- 44,48 ---- if( result == null ) { ! throw new PropertyNotFoundException( "Could not find a getter for property " + propertyName + " in class " + theClass.FullName ); } return result; *************** *** 42,50 **** /// <summary> ! /// /// </summary> ! /// <param name="theClass"></param> ! /// <param name="propertyName"></param> ! /// <returns></returns> public ISetter GetSetter( System.Type theClass, string propertyName ) { --- 50,66 ---- /// <summary> ! /// Create a <see cref="FieldSetter"/> to <c>set</c> the value of the Property ! /// through a <c>field</c>. /// </summary> ! /// <param name="theClass">The <see cref="System.Type"/> to find the Property in.</param> ! /// <param name="propertyName">The name of the Property to set.</param> ! /// <returns> ! /// The <see cref="FieldSetter"/> to use to set the value of the Property on an ! /// instance of the <see cref="System.Type"/>. ! /// </returns> ! /// <exception cref="PropertyNotFoundException" > ! /// Thrown when a field for the Property specified by the <c>propertyName</c> using the ! /// <see cref="IFieldNamingStrategy"/> could not be found in the <see cref="System.Type"/>. ! /// </exception> public ISetter GetSetter( System.Type theClass, string propertyName ) { Index: FieldGetter.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Property/FieldGetter.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** FieldGetter.cs 31 Dec 2004 21:56:10 -0000 1.3 --- FieldGetter.cs 13 Jan 2005 20:55:16 -0000 1.4 *************** *** 4,8 **** namespace NHibernate.Property { ! /// <summary></summary> public sealed class FieldGetter : IGetter { --- 4,10 ---- namespace NHibernate.Property { ! /// <summary> ! /// An <see cref="IGetter"/> that uses a Field instead of the Property <c>get</c>. ! /// </summary> public sealed class FieldGetter : IGetter { *************** *** 12,20 **** /// <summary> ! /// /// </summary> ! /// <param name="field"></param> ! /// <param name="clazz"></param> ! /// <param name="name"></param> public FieldGetter( FieldInfo field, System.Type clazz, string name ) { --- 14,22 ---- /// <summary> ! /// Initializes a new instance of <see cref="FieldGetter"/>. /// </summary> ! /// <param name="clazz">The <see cref="System.Type"/> that contains the field to use for the Property <c>get</c>.</param> ! /// <param name="field">The <see cref="FieldInfo"/> for reflection.</param> ! /// <param name="name">The name of the Field.</param> public FieldGetter( FieldInfo field, System.Type clazz, string name ) { *************** *** 27,34 **** /// <summary> ! /// /// </summary> ! /// <param name="target"></param> ! /// <returns></returns> public object Get( object target ) { --- 29,38 ---- /// <summary> ! /// Gets the value of the Field from the object. /// </summary> ! /// <param name="target">The object to get the Field value from.</param> ! /// <returns> ! /// The value of the Field for the target. ! /// </returns> public object Get( object target ) { *************** *** 43,47 **** } ! /// <summary></summary> public System.Type ReturnType { --- 47,54 ---- } ! /// <summary> ! /// Gets the <see cref="System.Type"/> that the Field returns. ! /// </summary> ! /// <value>The <see cref="System.Type"/> that the Field returns.</value> public System.Type ReturnType { *************** *** 49,53 **** } ! /// <summary></summary> public string PropertyName { --- 56,63 ---- } ! /// <summary> ! /// Gets the name of the Property. ! /// </summary> ! /// <value><c>null</c> since this is a Field - not a Property.</value> public string PropertyName { *************** *** 55,59 **** } ! /// <summary></summary> public PropertyInfo Property { --- 65,72 ---- } ! /// <summary> ! /// Gets the <see cref="PropertyInfo"/> for the Property. ! /// </summary> ! /// <value><c>null</c> since this is a Field - not a Property.</value> public PropertyInfo Property { Index: IGetter.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Property/IGetter.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** IGetter.cs 31 Dec 2004 21:56:23 -0000 1.2 --- IGetter.cs 13 Jan 2005 20:55:16 -0000 1.3 *************** *** 4,37 **** { /// <summary> ! /// Gets values of a particular property /// </summary> public interface IGetter { /// <summary> ! /// Get the property value from the given instance /// </summary> ! /// <param name="target"></param> ! /// <returns></returns> object Get( object target ); /// <summary> ! /// Get the declared Type. /// </summary> ! /// <returns></returns> System.Type ReturnType { get; } /// <summary> ! /// Optional operation (return null) /// </summary> ! /// <returns></returns> string PropertyName { get; } /// <summary> ! /// Optional operation (return null) /// </summary> ! /// <returns></returns> /// <remarks> ! /// This is used to tell the Proxy which getter to intercept as the <id> ! /// property. /// </remarks> PropertyInfo Property { get; } --- 4,50 ---- { /// <summary> ! /// Gets values of a particular mapped property. /// </summary> public interface IGetter { /// <summary> ! /// When implemented by a class, gets the value of the Property/Field from the object. /// </summary> ! /// <param name="target">The object to get the Property/Field value from.</param> ! /// <returns> ! /// The value of the Property for the target. ! /// </returns> ! /// <exception cref="PropertyAccessException"> ! /// Thrown when there is a problem getting the value from the target. ! /// </exception> object Get( object target ); /// <summary> ! /// When implemented by a class, gets the <see cref="System.Type"/> that the Property/Field returns. /// </summary> ! /// <value>The <see cref="System.Type"/> that the Property returns.</value> System.Type ReturnType { get; } /// <summary> ! /// When implemented by a class, gets the name of the Property. /// </summary> ! /// <value>The name of the Property or <c>null</c>.</value> ! /// <remarks> ! /// This is an optional operation - if the <see cref="IGetter"/> is not ! /// for a Property <c>get</c> then <c>null</c> is an acceptable value to return. ! /// </remarks> string PropertyName { get; } /// <summary> ! /// When implemented by a class, gets the <see cref="PropertyInfo"/> for the Property. /// </summary> ! /// <value> ! /// The <see cref="PropertyInfo"/> for the Property. ! /// </value> /// <remarks> ! /// This is an optional operation - if the <see cref="IGetter"/> is not ! /// for a Property <c>get</c> then <c>null</c> is an acceptable value to return. ! /// It is used by the Proxies to determine which getter to intercept as the ! /// <id> property. /// </remarks> PropertyInfo Property { get; } Index: BasicGetter.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Property/BasicGetter.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** BasicGetter.cs 31 Dec 2004 21:55:37 -0000 1.2 --- BasicGetter.cs 13 Jan 2005 20:55:16 -0000 1.3 *************** *** 4,8 **** namespace NHibernate.Property { ! /// <summary></summary> public sealed class BasicGetter : IGetter { --- 4,10 ---- namespace NHibernate.Property { ! /// <summary> ! /// An <see cref="IGetter"/> for a Property <c>get</c>. ! /// </summary> public sealed class BasicGetter : IGetter { *************** *** 12,20 **** /// <summary> ! /// /// </summary> ! /// <param name="clazz"></param> ! /// <param name="property"></param> ! /// <param name="propertyName"></param> public BasicGetter( System.Type clazz, PropertyInfo property, string propertyName ) { --- 14,22 ---- /// <summary> ! /// Initializes a new instance of <see cref="BasicGetter"/>. /// </summary> ! /// <param name="clazz">The <see cref="System.Type"/> that contains the Property <c>get</c>.</param> ! /// <param name="property">The <see cref="PropertyInfo"/> for reflection.</param> ! /// <param name="propertyName">The name of the Property.</param> public BasicGetter( System.Type clazz, PropertyInfo property, string propertyName ) { *************** *** 27,34 **** /// <summary> ! /// /// </summary> ! /// <param name="target"></param> ! /// <returns></returns> public object Get( object target ) { --- 29,38 ---- /// <summary> ! /// Gets the value of the Property from the object. /// </summary> ! /// <param name="target">The object to get the Property value from.</param> ! /// <returns> ! /// The value of the Property for the target. ! /// </returns> public object Get( object target ) { *************** *** 43,47 **** } ! /// <summary></summary> public System.Type ReturnType { --- 47,54 ---- } ! /// <summary> ! /// Gets the <see cref="System.Type"/> that the Property returns. ! /// </summary> ! /// <value>The <see cref="System.Type"/> that the Property returns.</value> public System.Type ReturnType { *************** *** 49,53 **** } ! /// <summary></summary> public string PropertyName { --- 56,63 ---- } ! /// <summary> ! /// Gets the name of the Property. ! /// </summary> ! /// <value>The name of the Property.</value> public string PropertyName { *************** *** 55,59 **** } ! /// <summary></summary> public PropertyInfo Property { --- 65,74 ---- } ! /// <summary> ! /// Gets the <see cref="PropertyInfo"/> for the Property. ! /// </summary> ! /// <value> ! /// The <see cref="PropertyInfo"/> for the Property. ! /// </value> public PropertyInfo Property { Index: IPropertyAccessor.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Property/IPropertyAccessor.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** IPropertyAccessor.cs 31 Dec 2004 21:56:23 -0000 1.2 --- IPropertyAccessor.cs 13 Jan 2005 20:55:16 -0000 1.3 *************** *** 1,27 **** namespace NHibernate.Property { /// <summary> /// Abstracts the notion of a "property". Defines a strategy for accessing the ! /// value of an attribute. /// </summary> public interface IPropertyAccessor { /// <summary> ! /// Create a "getter" for the named attribute /// </summary> ! /// <param name="theClass"></param> ! /// <param name="propertyName"></param> ! /// <returns></returns> /// <exception cref="PropertyNotFoundException" > /// </exception> IGetter GetGetter( System.Type theClass, string propertyName ); /// <summary> ! /// Create a "setter" for the named attribute /// </summary> ! /// <param name="theClass"></param> ! /// <param name="propertyName"></param> ! /// <returns></returns> /// <exception cref="PropertyNotFoundException" > /// </exception> ISetter GetSetter( System.Type theClass, string propertyName ); --- 1,38 ---- + using System; + namespace NHibernate.Property { /// <summary> /// Abstracts the notion of a "property". Defines a strategy for accessing the ! /// value of a mapped property. /// </summary> public interface IPropertyAccessor { /// <summary> ! /// When implemented by a class, create a "getter" for the mapped property. /// </summary> ! /// <param name="theClass">The <see cref="System.Type"/> to find the Property in.</param> ! /// <param name="propertyName">The name of the Property to get.</param> ! /// <returns> ! /// The <see cref="IGetter"/> to use to get the value of the Property from an ! /// instance of the <see cref="System.Type"/>.</returns> /// <exception cref="PropertyNotFoundException" > + /// Thrown when a Property specified by the <c>propertyName</c> could not + /// be found in the <see cref="System.Type"/>. /// </exception> IGetter GetGetter( System.Type theClass, string propertyName ); /// <summary> ! /// When implemented by a class, create a "setter" for the mapped property. /// </summary> ! /// <param name="theClass">The <see cref="System.Type"/> to find the Property in.</param> ! /// <param name="propertyName">The name of the Property to set.</param> ! /// <returns> ! /// The <see cref="ISetter"/> to use to set the value of the Property on an ! /// instance of the <see cref="System.Type"/>. ! /// </returns> /// <exception cref="PropertyNotFoundException" > + /// Thrown when a Property specified by the <c>propertyName</c> could not + /// be found in the <see cref="System.Type"/>. /// </exception> ISetter GetSetter( System.Type theClass, string propertyName ); Index: ISetter.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Property/ISetter.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** ISetter.cs 31 Dec 2004 21:56:23 -0000 1.2 --- ISetter.cs 13 Jan 2005 20:55:16 -0000 1.3 *************** *** 4,33 **** { /// <summary> ! /// Summary description for ISetter. /// </summary> public interface ISetter { /// <summary> ! /// Set the property value from the given instance /// </summary> ! /// <param name="target"></param> ! /// <param name="value"></param> ! /// <exception cref="HibernateException"> /// </exception> void Set( object target, object value ); /// <summary> ! /// Optional operation (return null) /// </summary> ! /// <returns></returns> string PropertyName { get; } /// <summary> ! /// Optional operation (return null) /// </summary> ! /// <returns></returns> /// <remarks> ! /// This is used to tell the Proxy which setter to intercept as the <id> ! /// property. /// </remarks> PropertyInfo Property { get; } --- 4,42 ---- { /// <summary> ! /// Sets values of a particular mapped property. /// </summary> public interface ISetter { /// <summary> ! /// When implemented by a class, sets the value of the Property/Field on the object. /// </summary> ! /// <param name="target">The object to set the Property value in.</param> ! /// <param name="value">The value to set the Property to.</param> ! /// <exception cref="PropertyAccessException"> ! /// Thrown when there is a problem setting the value in the target. /// </exception> void Set( object target, object value ); /// <summary> ! /// When implemented by a class, gets the name of the Property. /// </summary> ! /// <value>The name of the Property or <c>null</c>.</value> ! /// <remarks> ! /// This is an optional operation - if it is not implemented then ! /// <c>null</c> is an acceptable value to return. ! /// </remarks> string PropertyName { get; } /// <summary> ! /// When implemented by a class, gets the <see cref="PropertyInfo"/> for the Property. /// </summary> ! /// <value> ! /// The <see cref="PropertyInfo"/> for the Property. ! /// </value> /// <remarks> ! /// This is an optional operation - if it is not implemented then ! /// <c>null</c> is an acceptable value to return. It is used by ! /// the Proxies to determine which setter to intercept as the ! /// <id> property. /// </remarks> PropertyInfo Property { get; } Index: BasicPropertyAccessor.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Property/BasicPropertyAccessor.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** BasicPropertyAccessor.cs 31 Dec 2004 21:55:38 -0000 1.3 --- BasicPropertyAccessor.cs 13 Jan 2005 20:55:16 -0000 1.4 *************** *** 5,9 **** { /// <summary> ! /// Accesses property values via a get/set pair, which may be nonpublic. /// The default (and recommended strategy). /// </summary> --- 5,9 ---- { /// <summary> ! /// Accesses mapped property values via a get/set pair, which may be nonpublic. /// The default (and recommended strategy). /// </summary> *************** *** 15,29 **** /// <summary> ! /// /// </summary> ! /// <param name="type"></param> ! /// <param name="propertyName"></param> ! /// <returns></returns> ! public ISetter GetSetter( System.Type type, string propertyName ) { ! BasicSetter result = GetSetterOrNull( type, propertyName ); if( result == null ) { ! throw new PropertyNotFoundException( "Could not find a setter for property " + propertyName + " in class " + type.FullName ); } return result; --- 15,35 ---- /// <summary> ! /// Create a <see cref="BasicGetter"/> for the mapped property. /// </summary> ! /// <param name="theClass">The <see cref="System.Type"/> to find the Property in.</param> ! /// <param name="propertyName">The name of the Property to get.</param> ! /// <returns> ! /// The <see cref="BasicGetter"/> to use to get the value of the Property from an ! /// instance of the <see cref="System.Type"/>.</returns> ! /// <exception cref="PropertyNotFoundException" > ! /// Thrown when a Property specified by the <c>propertyName</c> could not ! /// be found in the <see cref="System.Type"/>. ! /// </exception> ! public IGetter GetGetter( System.Type theClass, string propertyName ) { ! BasicGetter result = GetGetterOrNull( theClass, propertyName ); if( result == null ) { ! throw new PropertyNotFoundException( "Could not find a getter for property " + propertyName + " in class " + theClass.FullName ); } return result; *************** *** 31,45 **** /// <summary> ! /// /// </summary> ! /// <param name="theClass"></param> ! /// <param name="propertyName"></param> ! /// <returns></returns> ! public IGetter GetGetter( System.Type theClass, string propertyName ) { ! BasicGetter result = GetGetterOrNull( theClass, propertyName ); if( result == null ) { ! throw new PropertyNotFoundException( "Could not find a setter for property " + propertyName + " in class " + theClass.FullName ); } return result; --- 37,58 ---- /// <summary> ! /// Create a <see cref="BasicSetter"/> for the mapped property. /// </summary> ! /// <param name="type">The <see cref="System.Type"/> to find the Property in.</param> ! /// <param name="propertyName">The name of the Property to get.</param> ! /// <returns> ! /// The <see cref="BasicSetter"/> to use to set the value of the Property on an ! /// instance of the <see cref="System.Type"/>. ! /// </returns> ! /// <exception cref="PropertyNotFoundException" > ! /// Thrown when a Property specified by the <c>propertyName</c> could not ! /// be found in the <see cref="System.Type"/>. ! /// </exception> ! public ISetter GetSetter( System.Type type, string propertyName ) { ! BasicSetter result = GetSetterOrNull( type, propertyName ); if( result == null ) { ! throw new PropertyNotFoundException( "Could not find a setter for property " + propertyName + " in class " + type.FullName ); } return result; *************** *** 49,120 **** /// <summary> ! /// /// </summary> ! /// <param name="type"></param> ! /// <param name="propertyName"></param> ! /// <returns></returns> ! internal static BasicSetter GetSetterOrNull( System.Type type, string propertyName ) { ! if( type == typeof( object ) || type == null ) { return null; } - //PropertyInfo property = type.GetProperty(propertyName); PropertyInfo property = type.GetProperty( propertyName, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.DeclaredOnly ); if( property != null ) { ! return new BasicSetter( type, property, propertyName ); } else { ! BasicSetter setter = GetSetterOrNull( type.BaseType, propertyName ); ! if( setter == null ) { System.Type[ ] interfaces = type.GetInterfaces(); ! for( int i = 0; setter == null && i < interfaces.Length; i++ ) { ! setter = GetSetterOrNull( interfaces[ i ], propertyName ); } } ! return setter; } - } /// <summary> ! /// /// </summary> ! /// <param name="type"></param> ! /// <param name="propertyName"></param> ! /// <returns></returns> ! internal static BasicGetter GetGetterOrNull( System.Type type, string propertyName ) { if( type == typeof( object ) || type == null ) { return null; } - //PropertyInfo property = type.GetProperty(propertyName); PropertyInfo property = type.GetProperty( propertyName, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.DeclaredOnly ); if( property != null ) { ! return new BasicGetter( type, property, propertyName ); } else { ! BasicGetter getter = GetGetterOrNull( type.BaseType, propertyName ); ! if( getter == null ) { System.Type[ ] interfaces = type.GetInterfaces(); ! for( int i = 0; getter == null && i < interfaces.Length; i++ ) { ! getter = GetGetterOrNull( interfaces[ i ], propertyName ); } } ! return getter; } - } } --- 62,150 ---- /// <summary> ! /// Helper method to find the Property <c>get</c>. /// </summary> ! /// <param name="type">The <see cref="System.Type"/> to find the Property in.</param> ! /// <param name="propertyName">The name of the Property to get.</param> ! /// <returns> ! /// The <see cref="BasicGetter"/> for the Property <c>get</c> or <c>null</c> ! /// if the Property could not be found. ! /// </returns> ! internal static BasicGetter GetGetterOrNull( System.Type type, string propertyName ) { ! ! if( type==typeof( object ) || type==null ) { + // the full inheritance chain has been walked and we could + // not find the Property get return null; } PropertyInfo property = type.GetProperty( propertyName, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.DeclaredOnly ); if( property != null ) { ! return new BasicGetter( type, property, propertyName ); } else { ! // recursively call this method for the base Type ! BasicGetter getter = GetGetterOrNull( type.BaseType, propertyName ); ! ! // didn't find anything in the base class - check to see if there is ! // an explicit interface implementation. ! if( getter == null ) { System.Type[ ] interfaces = type.GetInterfaces(); ! for( int i = 0; getter == null && i < interfaces.Length; i++ ) { ! getter = GetGetterOrNull( interfaces[ i ], propertyName ); } } ! return getter; } + } + /// <summary> ! /// Helper method to find the Property <c>set</c>. /// </summary> ! /// <param name="type">The <see cref="System.Type"/> to find the Property in.</param> ! /// <param name="propertyName">The name of the Property to set.</param> ! /// <returns> ! /// The <see cref="BasicSetter"/> for the Property <c>set</c> or <c>null</c> ! /// if the Property could not be found. ! /// </returns> ! internal static BasicSetter GetSetterOrNull( System.Type type, string propertyName ) { if( type == typeof( object ) || type == null ) { + // the full inheritance chain has been walked and we could + // not find the Property get return null; } PropertyInfo property = type.GetProperty( propertyName, BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.DeclaredOnly ); if( property != null ) { ! return new BasicSetter( type, property, propertyName ); } else { ! // recursively call this method for the base Type ! BasicSetter setter = GetSetterOrNull( type.BaseType, propertyName ); ! ! // didn't find anything in the base class - check to see if there is ! // an explicit interface implementation. ! if( setter == null ) { System.Type[ ] interfaces = type.GetInterfaces(); ! for( int i = 0; setter == null && i < interfaces.Length; i++ ) { ! setter = GetSetterOrNull( interfaces[ i ], propertyName ); } } ! return setter; } } } Index: BasicSetter.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Property/BasicSetter.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** BasicSetter.cs 31 Dec 2004 21:55:38 -0000 1.2 --- BasicSetter.cs 13 Jan 2005 20:55:16 -0000 1.3 *************** *** 4,8 **** namespace NHibernate.Property { ! /// <summary></summary> public sealed class BasicSetter : ISetter { --- 4,10 ---- namespace NHibernate.Property { ! /// <summary> ! /// An <see cref="ISetter"/> for a Property <c>set</c>. ! /// </summary> public sealed class BasicSetter : ISetter { *************** *** 12,20 **** /// <summary> ! /// /// </summary> ! /// <param name="clazz"></param> ! /// <param name="property"></param> ! /// <param name="propertyName"></param> public BasicSetter( System.Type clazz, PropertyInfo property, string propertyName ) { --- 14,22 ---- /// <summary> ! /// Initializes a new instance of <see cref="BasicSetter"/>. /// </summary> ! /// <param name="clazz">The <see cref="System.Type"/> that contains the Property <c>set</c>.</param> ! /// <param name="property">The <see cref="PropertyInfo"/> for reflection.</param> ! /// <param name="propertyName">The name of the Property.</param> public BasicSetter( System.Type clazz, PropertyInfo property, string propertyName ) { *************** *** 27,34 **** /// <summary> ! /// /// </summary> ! /// <param name="target"></param> ! /// <param name="value"></param> public void Set( object target, object value ) { --- 29,39 ---- /// <summary> ! /// Sets the value of the Property on the object. /// </summary> ! /// <param name="target">The object to set the Property value in.</param> ! /// <param name="value">The value to set the Property to.</param> ! /// <exception cref="PropertyAccessException"> ! /// Thrown when there is a problem setting the value in the target. ! /// </exception> public void Set( object target, object value ) { *************** *** 43,47 **** } ! /// <summary></summary> public string PropertyName { --- 48,55 ---- } ! /// <summary> ! /// Gets the name of the Property. ! /// </summary> ! /// <value>The name of the Property or <c>null</c>.</value> public string PropertyName { *************** *** 49,53 **** } ! /// <summary></summary> public PropertyInfo Property { --- 57,64 ---- } ! /// <summary> ! /// Gets the <see cref="PropertyInfo"/> for the Property. ! /// </summary> ! /// <value>The <see cref="PropertyInfo"/> for the Property.</value> public PropertyInfo Property { Index: FieldSetter.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Property/FieldSetter.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** FieldSetter.cs 31 Dec 2004 21:56:10 -0000 1.2 --- FieldSetter.cs 13 Jan 2005 20:55:16 -0000 1.3 *************** *** 4,8 **** namespace NHibernate.Property { ! /// <summary></summary> public sealed class FieldSetter : ISetter { --- 4,10 ---- namespace NHibernate.Property { ! /// <summary> ! /// An <see cref="IGetter"/> that uses a Field instead of the Property <c>set</c>. ! /// </summary> public sealed class FieldSetter : ISetter { *************** *** 12,20 **** /// <summary> ! /// /// </summary> ! /// <param name="field"></param> ! /// <param name="clazz"></param> ! /// <param name="name"></param> public FieldSetter( FieldInfo field, System.Type clazz, string name ) { --- 14,22 ---- /// <summary> ! /// Initializes a new instance of <see cref="FieldSetter"/>. /// </summary> ! /// <param name="clazz">The <see cref="System.Type"/> that contains the Field to use for the Property <c>set</c>.</param> ! /// <param name="field">The <see cref="FieldInfo"/> for reflection.</param> ! /// <param name="name">The name of the Field.</param> public FieldSetter( FieldInfo field, System.Type clazz, string name ) { *************** *** 27,34 **** /// <summary> ! /// /// </summary> ! /// <param name="target"></param> ! /// <param name="value"></param> public void Set( object target, object value ) { --- 29,39 ---- /// <summary> ! /// Sets the value of the Field on the object. /// </summary> ! /// <param name="target">The object to set the Field value in.</param> ! /// <param name="value">The value to set the Field to.</param> ! /// <exception cref="PropertyAccessException"> ! /// Thrown when there is a problem setting the value in the target. ! /// </exception> public void Set( object target, object value ) { *************** *** 43,47 **** } ! /// <summary></summary> public string PropertyName { --- 48,55 ---- } ! /// <summary> ! /// Gets the name of the Property. ! /// </summary> ! /// <value><c>null</c> since this is a Field - not a Property.</value> public string PropertyName { *************** *** 49,53 **** } ! /// <summary></summary> public PropertyInfo Property { --- 57,64 ---- } ! /// <summary> ! /// Gets the <see cref="PropertyInfo"/> for the Property. ! /// </summary> ! /// <value><c>null</c> since this is a Field - not a Property.</value> public PropertyInfo Property { |
From: Michael D. <mik...@us...> - 2005-01-13 20:54:43
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate.Test/TypesTest In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29241/NHibernate.Test/TypesTest Modified Files: DecimalClass.hbm.xml Log Message: changed name of field for mysql. Index: DecimalClass.hbm.xml =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate.Test/TypesTest/DecimalClass.hbm.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** DecimalClass.hbm.xml 30 Dec 2004 16:25:19 -0000 1.1 --- DecimalClass.hbm.xml 13 Jan 2005 20:54:22 -0000 1.2 *************** *** 11,15 **** </id> ! <property name="DecimalValue" type="Decimal" column="dec"/> </class> </hibernate-mapping> --- 11,15 ---- </id> ! <property name="DecimalValue" type="Decimal" column="decim"/> </class> </hibernate-mapping> |
From: Michael D. <mik...@us...> - 2005-01-13 20:54:13
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate.Test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29120/NHibernate.Test Modified Files: FooBarTest.cs Log Message: Fixed problems with Properties and compilation. Index: FooBarTest.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate.Test/FooBarTest.cs,v retrieving revision 1.79 retrieving revision 1.80 diff -C2 -d -r1.79 -r1.80 *** FooBarTest.cs 6 Jan 2005 14:32:10 -0000 1.79 --- FooBarTest.cs 13 Jan 2005 20:54:02 -0000 1.80 *************** *** 491,495 **** while( e.MoveNext() ) { ! e.Current; count++; } --- 491,495 ---- while( e.MoveNext() ) { ! object temp = e.Current; count++; } *************** *** 1544,1548 **** string tempKey = b.Key; Assert.IsFalse( NHibernate.IsInitialized(b), "b should have been an unitialized Proxy" ); ! b.BarString; Assert.IsTrue( NHibernate.IsInitialized(b), "b should have been an initialized Proxy" ); BarProxy b2 = (BarProxy)s.Load( typeof(Bar), tempKey ); --- 1544,1548 ---- string tempKey = b.Key; Assert.IsFalse( NHibernate.IsInitialized(b), "b should have been an unitialized Proxy" ); ! string tempString = b.BarString; Assert.IsTrue( NHibernate.IsInitialized(b), "b should have been an initialized Proxy" ); BarProxy b2 = (BarProxy)s.Load( typeof(Bar), tempKey ); *************** *** 2248,2252 **** while( enumer.MoveNext() ) { ! enumer.Current; } --- 2248,2252 ---- while( enumer.MoveNext() ) { ! object objTemp = enumer.Current; } *************** *** 2294,2298 **** while( enumer.MoveNext() ) { ! enumer.Current; } --- 2294,2298 ---- while( enumer.MoveNext() ) { ! object objTemp = enumer.Current; } *************** *** 2677,2681 **** try { ! q.MoreFums.Count; } catch (LazyInitializationException lie) --- 2677,2681 ---- try { ! int countMoreFums = q.MoreFums.Count; } catch (LazyInitializationException lie) *************** *** 2689,2693 **** try { ! q.Fums.Count; } catch (LazyInitializationException lie) --- 2689,2693 ---- try { ! int countFums = q.Fums.Count; } catch (LazyInitializationException lie) *************** *** 2907,2911 **** s = sessions.OpenSession(); one = (One)s.Load( typeof(One), one.Key ); ! one.Manies.Count; s.Close(); --- 2907,2911 ---- s = sessions.OpenSession(); one = (One)s.Load( typeof(One), one.Key ); ! int countManies = one.Manies.Count; s.Close(); *************** *** 3292,3296 **** try { ! ( (FooProxy)s.Load( typeof(Foo), id )).Boolean; } // this won't work until Proxies are implemented because now it throws an --- 3292,3296 ---- try { ! bool proxyBoolean = ( (FooProxy)s.Load( typeof(Foo), id )).Boolean; } // this won't work until Proxies are implemented because now it throws an |
From: Kevin W. <kev...@us...> - 2005-01-12 07:41:52
|
Update of /cvsroot/nhibernate/NHibernateContrib/lib In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19773 Added Files: NAnt.Core.dll NAnt.Core.license.txt NAnt.Core.xml Log Message: add missing dependency for hbm2nettask --- NEW FILE: NAnt.Core.license.txt --- GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. <one line to give the program's name and a brief idea of what it does.> Copyright (C) <year> <name of author> This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. <signature of Ty Coon>, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. --- NEW FILE: NAnt.Core.xml --- <?xml version="1.0"?> <doc> <assembly> <name>NAnt.Core</name> </assembly> <members> <member name="T:NAnt.Core.Attributes.BooleanValidatorAttribute"> <summary> Used to indicate that a property should be able to be converted into a <see cref="T:System.Boolean"/>. </summary> </member> <member name="T:NAnt.Core.Attributes.ValidatorAttribute"> <summary> Base class for all validator attributes. </summary> </member> <member name="M:NAnt.Core.Attributes.ValidatorAttribute.Validate(System.Object)"> <summary> [...8955 lines suppressed...] </member> <member name="P:NAnt.Core.XmlLogger.Threshold"> <summary> Gets or sets the highest level of message this logger should respond to. </summary> <value>The highest level of message this logger should respond to.</value> <remarks> Only messages with a message level higher than or equal to the given level should be written to the log. </remarks> </member> <member name="P:NAnt.Core.XmlLogger.OutputWriter"> <summary> Gets or sets the <see cref="T:System.IO.TextWriter"/> to which the logger is to send its output. </summary> </member> </members> </doc> --- NEW FILE: NAnt.Core.dll --- (This appears to be a binary file; contents omitted.) |
From: Kevin W. <kev...@us...> - 2005-01-06 14:32:35
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate.Test/UtilityTest In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15716 Modified Files: IdentityMapFixture.cs SequencedHashMapFixture.cs Log Message: fix compiler warning Index: IdentityMapFixture.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate.Test/UtilityTest/IdentityMapFixture.cs,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** IdentityMapFixture.cs 9 Aug 2004 03:12:37 -0000 1.7 --- IdentityMapFixture.cs 6 Jan 2005 14:32:26 -0000 1.8 *************** *** 106,112 **** ICollection concurrent = IdentityMap.ConcurrentEntries(map); - int i = 0; ! foreach(DictionaryEntry de in concurrent) { if(i==0) map.Add(noHashCode3, value3); --- 106,111 ---- ICollection concurrent = IdentityMap.ConcurrentEntries(map); ! for( int i = 0; i < concurrent.Count; ) { if(i==0) map.Add(noHashCode3, value3); Index: SequencedHashMapFixture.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate.Test/UtilityTest/SequencedHashMapFixture.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** SequencedHashMapFixture.cs 27 Sep 2004 01:50:05 -0000 1.3 --- SequencedHashMapFixture.cs 6 Jan 2005 14:32:26 -0000 1.4 *************** *** 107,111 **** bool noEntries = true; ! foreach( DictionaryEntry de in _emptyShm ) { noEntries = false; --- 107,111 ---- bool noEntries = true; ! for( int i = 0; i < _emptyShm.Count; i++ ) { noEntries = false; *************** *** 247,251 **** bool noValues = true; ! foreach( object obj in _emptyShm.Values ) { noValues = false; --- 247,251 ---- bool noValues = true; ! for( int i = 0; i < _emptyShm.Values.Count; i++ ) { noValues = false; |
From: Kevin W. <kev...@us...> - 2005-01-06 14:32:21
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate.Test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15632 Modified Files: FooBarTest.cs Log Message: fix compiler warning Index: FooBarTest.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate.Test/FooBarTest.cs,v retrieving revision 1.78 retrieving revision 1.79 diff -C2 -d -r1.78 -r1.79 *** FooBarTest.cs 5 Jan 2005 03:26:36 -0000 1.78 --- FooBarTest.cs 6 Jan 2005 14:32:10 -0000 1.79 *************** *** 488,493 **** int count = 0; ! foreach(object obj in enumerable) { count++; } --- 488,495 ---- int count = 0; ! IEnumerator e = enumerable.GetEnumerator(); ! while( e.MoveNext() ) { + e.Current; count++; } *************** *** 1542,1548 **** string tempKey = b.Key; Assert.IsFalse( NHibernate.IsInitialized(b), "b should have been an unitialized Proxy" ); ! string tempBarString = b.BarString; Assert.IsTrue( NHibernate.IsInitialized(b), "b should have been an initialized Proxy" ); ! BarProxy b2 = (BarProxy)s.Load( typeof(Bar), b.Key ); Qux q2 = (Qux)s.Load( typeof(Qux), q.Key ); Assert.AreSame( q, q2, "loaded same Qux" ); --- 1544,1550 ---- string tempKey = b.Key; Assert.IsFalse( NHibernate.IsInitialized(b), "b should have been an unitialized Proxy" ); ! b.BarString; Assert.IsTrue( NHibernate.IsInitialized(b), "b should have been an initialized Proxy" ); ! BarProxy b2 = (BarProxy)s.Load( typeof(Bar), tempKey ); Qux q2 = (Qux)s.Load( typeof(Qux), q.Key ); Assert.AreSame( q, q2, "loaded same Qux" ); *************** *** 2246,2250 **** while( enumer.MoveNext() ) { ! object obj = enumer.Current; } --- 2248,2252 ---- while( enumer.MoveNext() ) { ! enumer.Current; } *************** *** 2292,2296 **** while( enumer.MoveNext() ) { ! object obj = enumer.Current; } --- 2294,2298 ---- while( enumer.MoveNext() ) { ! enumer.Current; } *************** *** 2675,2679 **** try { ! int i = q.MoreFums.Count; } catch (LazyInitializationException lie) --- 2677,2681 ---- try { ! q.MoreFums.Count; } catch (LazyInitializationException lie) *************** *** 2687,2691 **** try { ! int j = q.Fums.Count; } catch (LazyInitializationException lie) --- 2689,2693 ---- try { ! q.Fums.Count; } catch (LazyInitializationException lie) *************** *** 2905,2909 **** s = sessions.OpenSession(); one = (One)s.Load( typeof(One), one.Key ); ! int count = one.Manies.Count; s.Close(); --- 2907,2911 ---- s = sessions.OpenSession(); one = (One)s.Load( typeof(One), one.Key ); ! one.Manies.Count; s.Close(); *************** *** 3290,3294 **** try { ! bool somevalue = ( (FooProxy)s.Load( typeof(Foo), id )).Boolean; } // this won't work until Proxies are implemented because now it throws an --- 3292,3296 ---- try { ! ( (FooProxy)s.Load( typeof(Foo), id )).Boolean; } // this won't work until Proxies are implemented because now it throws an *************** *** 3412,3416 **** Baz baz = new Baz(); Iesi.Collections.ISet bars = new Iesi.Collections.HashedSet(); - object emptyObject = new object(); baz.CascadingBars = bars; s.Save(baz); --- 3414,3417 ---- |
From: Kevin W. <kev...@us...> - 2005-01-06 14:20:09
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate/Mapping In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13036 Modified Files: Column.cs PersistentClass.cs UniqueKey.cs Log Message: fix xml documentation comments Index: PersistentClass.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Mapping/PersistentClass.cs,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** PersistentClass.cs 3 Jan 2005 03:46:48 -0000 1.17 --- PersistentClass.cs 6 Jan 2005 14:19:59 -0000 1.18 *************** *** 9,13 **** /// Base class for the <see cref="RootClass" /> mapped by <c><class></c> and a /// <see cref="Subclass"/> that is mapped by <c><subclass></c> or ! /// <c><joined-subclass></c>. /// </summary> public abstract class PersistentClass --- 9,13 ---- /// Base class for the <see cref="RootClass" /> mapped by <c><class></c> and a /// <see cref="Subclass"/> that is mapped by <c><subclass></c> or ! /// <c><joined-subclass></c>. /// </summary> public abstract class PersistentClass Index: UniqueKey.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Mapping/UniqueKey.cs,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** UniqueKey.cs 2 Jan 2005 22:03:39 -0000 1.6 --- UniqueKey.cs 6 Jan 2005 14:19:59 -0000 1.7 *************** *** 40,43 **** --- 40,44 ---- /// </summary> /// <param name="d">The <see cref="Dialect.Dialect"/> to use for SQL rules.</param> + /// <param name="constraintName"></param> /// <returns> /// A string that contains the SQL to create the Unique Key Constraint. Index: Column.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Mapping/Column.cs,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** Column.cs 2 Jan 2005 22:03:39 -0000 1.15 --- Column.cs 6 Jan 2005 14:19:59 -0000 1.16 *************** *** 288,292 **** /// Returns the hash code for this instance. /// </summary> ! /// <value>The value of <see cref="Name.GetHashCode()">Name.GetHashCode()</see>.</value> public override int GetHashCode() { --- 288,292 ---- /// Returns the hash code for this instance. /// </summary> ! /// <value>The value of Name.GetHashCode().</value> public override int GetHashCode() { |
From: Michael D. <mik...@us...> - 2005-01-06 00:23:46
|
Update of /cvsroot/nhibernate/NHibernateContrib/src/Nullables In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10628/src/Nullables Modified Files: AssemblyInfo.cs Log Message: updated from 0.6 build Index: AssemblyInfo.cs =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/src/Nullables/AssemblyInfo.cs,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** AssemblyInfo.cs 16 Dec 2004 15:26:12 -0000 1.5 --- AssemblyInfo.cs 6 Jan 2005 00:23:36 -0000 1.6 *************** *** 17,22 **** [assembly: AssemblyProductAttribute("Nullables")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.5.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.5")] ! [assembly: AssemblyFileVersionAttribute("0.5.0.0")] --- 17,23 ---- [assembly: AssemblyProductAttribute("Nullables")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.6.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.6")] ! [assembly: AssemblyFileVersionAttribute("0.6.0.0")] ! //[assembly: AssemblyKeyFileAttribute("..\\NHibernate.snk")] |
From: Michael D. <mik...@us...> - 2005-01-06 00:23:46
|
Update of /cvsroot/nhibernate/NHibernateContrib/src/Nullables.Tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10628/src/Nullables.Tests Modified Files: AssemblyInfo.cs Log Message: updated from 0.6 build Index: AssemblyInfo.cs =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/src/Nullables.Tests/AssemblyInfo.cs,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** AssemblyInfo.cs 16 Dec 2004 14:29:09 -0000 1.4 --- AssemblyInfo.cs 6 Jan 2005 00:23:36 -0000 1.5 *************** *** 17,23 **** [assembly: AssemblyProductAttribute("Nullables.Tests")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.5.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.5")] ! [assembly: AssemblyFileVersionAttribute("0.5.0.0")] [assembly: AssemblyDelaySignAttribute(false)] --- 17,23 ---- [assembly: AssemblyProductAttribute("Nullables.Tests")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.6.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.6")] ! [assembly: AssemblyFileVersionAttribute("0.6.0.0")] [assembly: AssemblyDelaySignAttribute(false)] |
From: Michael D. <mik...@us...> - 2005-01-06 00:23:46
|
Update of /cvsroot/nhibernate/NHibernateContrib/src/Nullables.NHibernate In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10628/src/Nullables.NHibernate Modified Files: AssemblyInfo.cs Log Message: updated from 0.6 build Index: AssemblyInfo.cs =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/src/Nullables.NHibernate/AssemblyInfo.cs,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** AssemblyInfo.cs 16 Dec 2004 15:26:13 -0000 1.5 --- AssemblyInfo.cs 6 Jan 2005 00:23:36 -0000 1.6 *************** *** 17,22 **** [assembly: AssemblyProductAttribute("Nullables.NHibernate")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.5.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.5")] ! [assembly: AssemblyFileVersionAttribute("0.5.0.0")] --- 17,23 ---- [assembly: AssemblyProductAttribute("Nullables.NHibernate")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.6.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.6")] ! [assembly: AssemblyFileVersionAttribute("0.6.0.0")] ! //[assembly: AssemblyKeyFileAttribute("..\\NHibernate.snk")] |
From: Michael D. <mik...@us...> - 2005-01-06 00:23:45
|
Update of /cvsroot/nhibernate/NHibernateContrib/src/NHibernate.Tool.Net2Hbm In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10628/src/NHibernate.Tool.Net2Hbm Modified Files: AssemblyInfo.cs Log Message: updated from 0.6 build Index: AssemblyInfo.cs =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/src/NHibernate.Tool.Net2Hbm/AssemblyInfo.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AssemblyInfo.cs 30 Dec 2004 16:54:02 -0000 1.1 --- AssemblyInfo.cs 6 Jan 2005 00:23:35 -0000 1.2 *************** *** 18,24 **** [assembly: AssemblyProductAttribute("NHibernate.Tool.Net2Hbm")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.5.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.5")] ! [assembly: AssemblyFileVersionAttribute("0.5.0.0")] //[assembly: AssemblyKeyFileAttribute("..\\NHibernate.snk")] --- 18,24 ---- [assembly: AssemblyProductAttribute("NHibernate.Tool.Net2Hbm")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.6.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.6")] ! [assembly: AssemblyFileVersionAttribute("0.6.0.0")] //[assembly: AssemblyKeyFileAttribute("..\\NHibernate.snk")] |
From: Michael D. <mik...@us...> - 2005-01-06 00:23:45
|
Update of /cvsroot/nhibernate/NHibernateContrib/src/BantamTech.SysCache In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10628/src/BantamTech.SysCache Modified Files: AssemblyInfo.cs Log Message: updated from 0.6 build Index: AssemblyInfo.cs =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/src/BantamTech.SysCache/AssemblyInfo.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** AssemblyInfo.cs 16 Dec 2004 15:26:12 -0000 1.3 --- AssemblyInfo.cs 6 Jan 2005 00:23:35 -0000 1.4 *************** *** 20,24 **** [assembly: AssemblyProductAttribute("BantamTech.SysCache")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.5.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.5")] --- 20,25 ---- [assembly: AssemblyProductAttribute("BantamTech.SysCache")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.6.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.6")] ! //[assembly: AssemblyKeyFileAttribute("..\\NHibernate.snk")] |
From: Michael D. <mik...@us...> - 2005-01-06 00:23:44
|
Update of /cvsroot/nhibernate/NHibernateContrib/src/NHibernate.Tasks In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10628/src/NHibernate.Tasks Modified Files: AssemblyInfo.cs Log Message: updated from 0.6 build Index: AssemblyInfo.cs =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/src/NHibernate.Tasks/AssemblyInfo.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AssemblyInfo.cs 30 Dec 2004 16:54:54 -0000 1.1 --- AssemblyInfo.cs 6 Jan 2005 00:23:35 -0000 1.2 *************** *** 17,23 **** [assembly: AssemblyProductAttribute("NHibernate.Tasks")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.5.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.5")] ! [assembly: AssemblyFileVersionAttribute("0.5.0.0")] [assembly: AssemblyDelaySignAttribute(false)] --- 17,23 ---- [assembly: AssemblyProductAttribute("NHibernate.Tasks")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.6.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.6")] ! [assembly: AssemblyFileVersionAttribute("0.6.0.0")] [assembly: AssemblyDelaySignAttribute(false)] |
From: Michael D. <mik...@us...> - 2005-01-06 00:23:44
|
Update of /cvsroot/nhibernate/NHibernateContrib/src/NHibernate.Tool.hbm2net In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10628/src/NHibernate.Tool.hbm2net Modified Files: AssemblyInfo.cs Log Message: updated from 0.6 build Index: AssemblyInfo.cs =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/src/NHibernate.Tool.hbm2net/AssemblyInfo.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AssemblyInfo.cs 30 Dec 2004 16:54:54 -0000 1.1 --- AssemblyInfo.cs 6 Jan 2005 00:23:35 -0000 1.2 *************** *** 17,23 **** [assembly: AssemblyProductAttribute("NHibernate.Tool.hbm2net")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.5.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.5")] ! [assembly: AssemblyFileVersionAttribute("0.5.0.0")] [assembly: AssemblyDelaySignAttribute(false)] --- 17,23 ---- [assembly: AssemblyProductAttribute("NHibernate.Tool.hbm2net")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.6.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.6")] ! [assembly: AssemblyFileVersionAttribute("0.6.0.0")] [assembly: AssemblyDelaySignAttribute(false)] |
From: Michael D. <mik...@us...> - 2005-01-05 22:42:56
|
Update of /cvsroot/nhibernate/NHibernateContrib/lib/net/1.1 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16555 Modified Files: NHibernate.dll NHibernate.xml Log Message: updated from 0.6 build Index: NHibernate.dll =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/lib/net/1.1/NHibernate.dll,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 Binary files /tmp/cvsECz8l4 and /tmp/cvsq0mEaB differ Index: NHibernate.xml =================================================================== RCS file: /cvsroot/nhibernate/NHibernateContrib/lib/net/1.1/NHibernate.xml,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** NHibernate.xml 6 Dec 2004 02:05:29 -0000 1.2 --- NHibernate.xml 5 Jan 2005 22:42:40 -0000 1.3 *************** *** 11,14 **** --- 11,20 ---- </summary> </member> + <member name="M:NHibernate.Cache.CachedItem.#ctor(System.Object)"> + <summary> + + </summary> + <param name="value"></param> + </member> <member name="M:NHibernate.Cache.CachedItem.Lock"> [...21070 lines suppressed...] </member> + <member name="M:NHibernate.WrongClassException.#ctor(System.String,System.Object,System.Type)"> + <summary> + + </summary> + <param name="message"></param> + <param name="identifier"></param> + <param name="type"></param> + </member> + <member name="P:NHibernate.WrongClassException.Identifier"> + <summary></summary> + </member> + <member name="P:NHibernate.WrongClassException.Type"> + <summary></summary> + </member> + <member name="P:NHibernate.WrongClassException.Message"> + <summary></summary> + </member> </members> </doc> |
From: Michael D. <mik...@us...> - 2005-01-05 22:14:26
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate.DomainModel In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8949/NHibernate.DomainModel Modified Files: AssemblyInfo.cs Log Message: updated from 0.6 build Index: AssemblyInfo.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate.DomainModel/AssemblyInfo.cs,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** AssemblyInfo.cs 2 Dec 2004 20:49:50 -0000 1.10 --- AssemblyInfo.cs 5 Jan 2005 22:14:12 -0000 1.11 *************** *** 17,23 **** [assembly: AssemblyProductAttribute("NHibernate.DomainModel")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.5.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.5")] ! [assembly: AssemblyFileVersionAttribute("0.5.0.0")] [assembly: AssemblyDelaySignAttribute(false)] --- 17,23 ---- [assembly: AssemblyProductAttribute("NHibernate.DomainModel")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.6.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.6")] ! [assembly: AssemblyFileVersionAttribute("0.6.0.0")] [assembly: AssemblyDelaySignAttribute(false)] |
From: Michael D. <mik...@us...> - 2005-01-05 22:14:25
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate.Test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8949/NHibernate.Test Modified Files: AssemblyInfo.cs Log Message: updated from 0.6 build Index: AssemblyInfo.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate.Test/AssemblyInfo.cs,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** AssemblyInfo.cs 2 Dec 2004 20:49:51 -0000 1.10 --- AssemblyInfo.cs 5 Jan 2005 22:14:12 -0000 1.11 *************** *** 17,23 **** [assembly: AssemblyProductAttribute("NHibernate.Test")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.5.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.5")] ! [assembly: AssemblyFileVersionAttribute("0.5.0.0")] [assembly: AssemblyDelaySignAttribute(false)] --- 17,23 ---- [assembly: AssemblyProductAttribute("NHibernate.Test")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.6.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.6")] ! [assembly: AssemblyFileVersionAttribute("0.6.0.0")] [assembly: AssemblyDelaySignAttribute(false)] |
From: Michael D. <mik...@us...> - 2005-01-05 22:14:24
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8949/NHibernate Modified Files: AssemblyInfo.cs Log Message: updated from 0.6 build Index: AssemblyInfo.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/AssemblyInfo.cs,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** AssemblyInfo.cs 1 Jan 2005 03:31:31 -0000 1.14 --- AssemblyInfo.cs 5 Jan 2005 22:14:11 -0000 1.15 *************** *** 6,10 **** // <autogenerated> // This code was generated by a tool. ! // Runtime Version: 1.1.4322.2032 // // Changes to this file may cause incorrect behavior and will be lost if --- 6,10 ---- // <autogenerated> // This code was generated by a tool. ! // Runtime Version: 1.1.4322.573 // // Changes to this file may cause incorrect behavior and will be lost if *************** *** 19,24 **** [assembly: AssemblyProductAttribute("NHibernate")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.5.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.5")] ! [assembly: AssemblyFileVersionAttribute("0.5.0.0")] --- 19,25 ---- [assembly: AssemblyProductAttribute("NHibernate")] [assembly: AssemblyCopyrightAttribute("Licensed under LGPL.")] ! [assembly: AssemblyVersionAttribute("0.6.0.0")] ! [assembly: AssemblyInformationalVersionAttribute("0.6")] ! [assembly: AssemblyFileVersionAttribute("0.6.0.0")] ! //[assembly: AssemblyKeyFileAttribute("..\\NHibernate.snk")] |
From: Michael D. <mik...@us...> - 2005-01-05 22:14:22
|
Update of /cvsroot/nhibernate/nhibernate/src/Iesi.Collections.Test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8949/Iesi.Collections.Test Modified Files: AssemblyInfo.cs Log Message: updated from 0.6 build Index: AssemblyInfo.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/Iesi.Collections.Test/AssemblyInfo.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AssemblyInfo.cs 8 Dec 2004 15:22:00 -0000 1.1 --- AssemblyInfo.cs 5 Jan 2005 22:14:11 -0000 1.2 *************** *** 5,9 **** // <autogenerated> // This code was generated by a tool. ! // Runtime Version: 1.1.4322.985 // // Changes to this file may cause incorrect behavior and will be lost if --- 5,9 ---- // <autogenerated> // This code was generated by a tool. ! // Runtime Version: 1.1.4322.573 // // Changes to this file may cause incorrect behavior and will be lost if |