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];
}
}
}
|