From: Peter S. <sz...@us...> - 2004-04-08 16:08:56
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate/Type In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9574/NHibernate/Type Modified Files: TypeFactory.cs Added Files: CharType.cs Removed Files: CharacterType.cs Log Message: CharacterType changed to CharType (System.Character doesn't exists, but System.Char does) --- CharacterType.cs DELETED --- Index: TypeFactory.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Type/TypeFactory.cs,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** TypeFactory.cs 1 Apr 2004 14:16:01 -0000 1.22 --- TypeFactory.cs 8 Apr 2004 15:55:46 -0000 1.23 *************** *** 88,92 **** TypeFactory.GetBooleanType(); TypeFactory.GetByteType(); ! TypeFactory.GetCharacterType(); TypeFactory.GetCultureInfoType(); TypeFactory.GetDateTimeType(); --- 88,92 ---- TypeFactory.GetBooleanType(); TypeFactory.GetByteType(); ! TypeFactory.GetCharType(); TypeFactory.GetCultureInfoType(); TypeFactory.GetDateTimeType(); *************** *** 472,482 **** /// </summary> /// <returns></returns> ! public static NullableType GetCharacterType() { ! string key = GetKeyForLengthBased(typeof(CharacterType).FullName, 1); NullableType returnType = (NullableType)typeByTypeOfName[key]; if(returnType==null) { ! returnType = new CharacterType(SqlTypeFactory.GetStringFixedLength(1)); AddToTypeOfName(key, returnType); } --- 472,482 ---- /// </summary> /// <returns></returns> ! public static NullableType GetCharType() { ! string key = GetKeyForLengthBased(typeof(CharType).FullName, 1); NullableType returnType = (NullableType)typeByTypeOfName[key]; if(returnType==null) { ! returnType = new CharType(SqlTypeFactory.GetStringFixedLength(1)); AddToTypeOfName(key, returnType); } --- NEW FILE: CharType.cs --- using System; using System.Data; using NHibernate.Sql; using NHibernate.SqlTypes; namespace NHibernate.Type { /// <summary> /// Summary description for CharacterType. /// </summary> public class CharType : PrimitiveType , IDiscriminatorType { internal CharType(StringFixedLengthSqlType sqlType) : base(sqlType) { } public override object Get(IDataReader rs, int index) { string str = rs.GetString(index); if (str==null) { return null; } else { return str[0]; } } public override object Get(IDataReader rs, string name) { return Get(rs, rs.GetOrdinal(name)); } public override System.Type PrimitiveClass { get { return typeof(char); } } public override System.Type ReturnedClass { get { return typeof(char); } } public override void Set(IDbCommand cmd, object value, int index) { ( (IDataParameter) cmd.Parameters[index] ).Value = (char) value; } public override string Name { get { return "Char"; } } public override string ObjectToSQLString(object value) { return '\'' + value.ToString() + '\''; } public virtual object StringToObject(string xml) { if ( xml.Length != 1 ) throw new MappingException("multiple or zero characters found parsing string"); return xml[0]; } } } |