From: Michael D. <mik...@us...> - 2004-12-11 20:08:30
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate/Type In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13895/NHibernate/Type Modified Files: TypeFactory.cs Added Files: SByteType.cs Log Message: NH-151: added SByteType and Fixture for it Moved nh specific CompositeId tests to their own namespace. --- NEW FILE: SByteType.cs --- using System; using System.Data; using NHibernate.Engine; using NHibernate.SqlTypes; namespace NHibernate.Type { /// <summary> /// Maps a <see cref="System.SByte"/> Property /// to a <see cref="DbType.SByte"/> column. /// </summary> public class SByteType : ValueTypeType, IDiscriminatorType { internal SByteType() : base( new SByteSqlType() ) { } public override object Get(IDataReader rs, int index) { return Convert.ToSByte(rs[index]); } public override object Get(IDataReader rs, string name) { return Convert.ToSByte(rs[name]); } public override System.Type ReturnedClass { get { return typeof(SByte); } } public override void Set(IDbCommand cmd, object value, int index) { ( (IDataParameter)cmd.Parameters[index] ).Value = (SByte) value; } public override string Name { get { return "SByte"; } } public override string ObjectToSQLString(object value) { return value.ToString(); } public virtual object StringToObject(string xml) { return SByte.Parse(xml); } } } Index: TypeFactory.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Type/TypeFactory.cs,v retrieving revision 1.39 retrieving revision 1.40 diff -C2 -d -r1.39 -r1.40 *** TypeFactory.cs 4 Dec 2004 22:24:17 -0000 1.39 --- TypeFactory.cs 11 Dec 2004 20:08:20 -0000 1.40 *************** *** 102,105 **** --- 102,107 ---- typeByTypeOfName[ typeof(System.Int64).FullName ] = NHibernate.Int64; typeByTypeOfName[ typeof(System.Int64).AssemblyQualifiedName ] = NHibernate.Int64; + typeByTypeOfName[ typeof(System.SByte).FullName ] = NHibernate.SByte; + typeByTypeOfName[ typeof(System.SByte).AssemblyQualifiedName ] = NHibernate.SByte; typeByTypeOfName[ typeof(System.Single).FullName ] = NHibernate.Single; typeByTypeOfName[ typeof(System.Single).AssemblyQualifiedName ] = NHibernate.Single; *************** *** 126,129 **** --- 128,132 ---- typeByTypeOfName[ NHibernate.Int32.Name ] = NHibernate.Int32; typeByTypeOfName[ NHibernate.Int64.Name ] = NHibernate.Int64; + typeByTypeOfName[ NHibernate.SByte.Name ] = NHibernate.SByte; typeByTypeOfName[ NHibernate.String.Name ] = NHibernate.String; typeByTypeOfName[ NHibernate.Single.Name ] = NHibernate.Single; |