/// <summary> /// Defines the Boolean type /// </summary> /// <param name="builder">type system builder</param> protected virtual void Boolean(TypeSystemBuilder builder) { builder .Type("Boolean", DataTypeGroupNameTable.Boolean) .Synonim("bool") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, TypesNameTable.Boolean) .TypeProperty(NameTable.LanguageTypeNameShort, TypesNameTable.String, "Boolean") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, "Boolean") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, "Boolean") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "False") .TypeProperty(NameTable.DefaultValue, TypesNameTable.Boolean, "False"); }
/// <summary> /// Defines the DateTime type /// </summary> /// <param name="builder">type system builder</param> protected virtual void DateTime(TypeSystemBuilder builder) { builder .Type("DateTime", DataTypeGroupNameTable.DateTime) .Synonim("datetime") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, TypesNameTable.DateTime) .TypeProperty(NameTable.LanguageTypeNameShort, TypesNameTable.String, "DateTime") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, "Date") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, "DateTime") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "date()") .TypeProperty(NameTable.DefaultValue, TypesNameTable.DateTime, "1900/01/01"); }
/// <summary> /// Defines the Boolean type /// </summary> /// <param name="builder"></param> protected override void Boolean(TypeSystemBuilder builder) { builder .Type("Boolean", DataTypeGroupNameTable.Boolean) .Synonim("bool") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, TypesNameTable.Boolean) .TypeProperty(NameTable.LanguageTypeNameShort, TypesNameTable.String, "bool") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, "System.Data.SqlDbType.Bit") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, "bit") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "false") .TypeProperty(NameTable.DefaultValue, TypesNameTable.Boolean, "false") .TypeProperty(NameTable.XsdTypeName, TypesNameTable.String, XsdTypesNameTable.Boolean); }
/// <summary> /// Empty constructor /// </summary> public PythonGAEDatastore() : base(c.NameTable.TargetLanguage.Python + "." + c.NameTable.TargetDataProvider.GAEDatastore) { TypeSystemBuilder builder = new TypeSystemBuilder(this); String(builder); Text(builder); Boolean(builder); Int32(builder); Int64(builder); Float(builder); Double(builder); DateTime(builder); }
/// <summary> /// Defines the Binary type /// </summary> /// <param name="builder">A <see cref="TypeSystemBuilder"/> instance</param> protected override void Binary(TypeSystemBuilder builder) { builder .Type("Binary", DataTypeGroupNameTable.Binary) .Synonim("binary") .TypeParameter(NameTable.Length_Parameter, TypesNameTable.Int32, false, "2000") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, TypesNameTable.Binary) .TypeProperty(NameTable.LanguageTypeNameShort, "System.String", "byte[]") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, null) .TypePropertyRangeValue(NameTable.Length_Parameter, TypesNameTable.Int32, "1", "2000", TypesNameTable.String, "VarBinary") .TypePropertyRangeValue(NameTable.Length_Parameter, TypesNameTable.Int32, "2001", "1073741823", TypesNameTable.String, "LongVarBinary") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, null) .TypePropertyRangeValue(NameTable.Length_Parameter, TypesNameTable.Int32, "1", "2000", TypesNameTable.String, "RAW(LENGTH)") .TypePropertyRangeValue(NameTable.Length_Parameter, TypesNameTable.Int32, "2001", "1073741823", TypesNameTable.String, "BLOB") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "null") .TypeProperty(NameTable.DefaultValue, TypesNameTable.Binary, "null"); }
/// <summary> /// Defines the binary type /// </summary> /// <param name="builder"></param> protected override void Binary(TypeSystemBuilder builder) { builder .Type("Binary", DataTypeGroupNameTable.Binary) .Synonim("binary") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, TypesNameTable.Binary) .TypeProperty(NameTable.LanguageTypeNameShort, "System.String", "byte[]") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, null) .TypePropertyRangeValue(NameTable.Length_Parameter, TypesNameTable.Int32, "1", "8000", TypesNameTable.String, "System.Data.SqlDbType.VarBinary") .TypePropertyRangeValue(NameTable.Length_Parameter, TypesNameTable.Int32, "8001", (2 ^ 31 - 1).ToString(), TypesNameTable.String, "System.Data.SqlDbType.VarBinary") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, null) .TypePropertyRangeValue(NameTable.Length_Parameter, TypesNameTable.Int32, "1", "8000", TypesNameTable.String, "varbinary(LENGTH)") .TypePropertyRangeValue(NameTable.Length_Parameter, TypesNameTable.Int32, "8001", (2 ^ 31 - 1).ToString(), TypesNameTable.String, "varbinary(max)") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "null") .TypeProperty(NameTable.DefaultValue, TypesNameTable.Binary, "null") .TypeProperty(NameTable.SupportsQueryEqualTo, TypesNameTable.Boolean, "false") .TypeProperty(NameTable.XsdTypeName, TypesNameTable.String, XsdTypesNameTable.BaseBinary64); }
/// <summary> /// Defines the String type /// </summary> /// <param name="builder">A <see cref="TypeSystemBuilder"/> instance</param> protected override void String(TypeSystemBuilder builder) { builder .Type("String", DataTypeGroupNameTable.CharString) .Synonim("string") .TypeParameter(NameTable.Length_Parameter, TypesNameTable.Int32, false, "255") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, TypesNameTable.String) .TypeProperty(NameTable.LanguageTypeNameShort, "System.String", "string") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, null) .TypePropertyParameter(NameTable.Length_Parameter, TypesNameTable.Int32, false, "255") .TypePropertyRangeValue(NameTable.Length_Parameter, TypesNameTable.Int32, "1", "2000", TypesNameTable.String, "VarChar") .TypePropertyRangeValue(NameTable.Length_Parameter, TypesNameTable.Int32, "2001", "1073741823", TypesNameTable.String, "Char") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, null) .TypePropertyParameter(NameTable.Length_Parameter, TypesNameTable.Int32, false, "255") .TypePropertyRangeValue(NameTable.Length_Parameter, TypesNameTable.Int32, "1", "2000", TypesNameTable.String, "NVARCHAR2(LENGTH)") .TypePropertyRangeValue(NameTable.Length_Parameter, TypesNameTable.Int32, "2001", "1073741823", TypesNameTable.String, "NCLOB") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "null") .TypeProperty(NameTable.DefaultValue, TypesNameTable.String, "null"); }
/// <summary> /// Constructor /// </summary> /// <param name="language"></param> /// <param name="dataProvider"></param> public TypeSystemBase(string language, string dataProvider) : base(language + "." + dataProvider) { TypeSystemBuilder builder = new TypeSystemBuilder(this); String(builder); Text(builder); Boolean(builder); Char(builder); Int16(builder); Int32(builder); Int64(builder); DateTime(builder); Double(builder); Float(builder); Decimal(builder); Guid(builder); Byte(builder); Binary(builder); Currency(builder); Percent(builder); }
/// <summary> /// Defines the Text type /// </summary> /// <param name="builder">type system builder</param> protected abstract void Text(TypeSystemBuilder builder);
/// <summary> /// Defines the String type /// </summary> /// <param name="builder">type system builder</param> protected abstract void String(TypeSystemBuilder builder);
/// <summary> /// Defines the Percent type /// </summary> /// <param name="builder">type system builder</param> protected abstract void Percent(TypeSystemBuilder builder);
/// <summary> /// Defines the Int64 type /// </summary> /// <param name="builder">type system builder</param> protected abstract void Int64(TypeSystemBuilder builder);
/// <summary> /// Defines the Guid type /// </summary> /// <param name="builder">type system builder</param> protected abstract void Guid(TypeSystemBuilder builder);
/// <summary> /// Defines the Float type /// </summary> /// <param name="builder">type system builder</param> protected abstract void Float(TypeSystemBuilder builder);
/// <summary> /// Defines the String type /// </summary> /// <param name="builder">type system builder</param> protected virtual void String(TypeSystemBuilder builder) { builder .Type("String", DataTypeGroupNameTable.CharString) .Synonim("string") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, "String") .TypeProperty(NameTable.LanguageTypeNameShort, TypesNameTable.String, "String") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, "String") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, "String") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "None") .TypeProperty(NameTable.DefaultValue, TypesNameTable.Int32, "None"); }
/// <summary> /// Defines the DateTime type /// </summary> /// <param name="builder">type system builder</param> protected abstract void DateTime(TypeSystemBuilder builder);
/// <summary> /// Defines the Char type /// </summary> /// <param name="builder">type system builder</param> protected abstract void Char(TypeSystemBuilder builder);
/// <summary> /// Defines the Boolean type /// </summary> /// <param name="builder">type system builder</param> protected abstract void Boolean(TypeSystemBuilder builder);
/// <summary> /// Defines the Double type /// </summary> /// <param name="builder">type system builder</param> protected virtual void Double(TypeSystemBuilder builder) { builder .Type("Double", DataTypeGroupNameTable.ApproximateNumeric) .Synonim("double") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, TypesNameTable.Double) .TypeProperty(NameTable.LanguageTypeNameShort, "System.String", "Float") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, "Float") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, "Float") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "0") .TypeProperty(NameTable.DefaultValue, TypesNameTable.Double, "0"); }
/// <summary> /// Defines the Byte type /// </summary> /// <param name="builder"></param> protected override void Byte(TypeSystemBuilder builder) { builder .Type("Byte", DataTypeGroupNameTable.Byte) .Synonim("byte") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, TypesNameTable.Byte) .TypeProperty(NameTable.LanguageTypeNameShort, "System.String", "byte") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, "System.Data.SqlDbType.TinyInt") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, "tinyint") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "0") .TypeProperty(NameTable.DefaultValue, TypesNameTable.Byte, "0") .TypeProperty(NameTable.XsdTypeName, TypesNameTable.String, XsdTypesNameTable.Byte); }
/// <summary> /// Defines the Int64 type /// </summary> /// <param name="builder">type system builder</param> protected virtual void Int64(TypeSystemBuilder builder) { builder .Type("Int64", DataTypeGroupNameTable.ExactNumeric) .Synonim("long") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, "Integer") .TypeProperty(NameTable.LanguageTypeNameShort, TypesNameTable.String, "Integer") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, "Integer") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, "Integer") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "0") .TypeProperty(NameTable.DefaultValue, TypesNameTable.Int32, "0"); }
/// <summary> /// Defines the percent type /// </summary> /// <param name="builder"></param> protected override void Percent(TypeSystemBuilder builder) { builder .Type("Percent", DataTypeGroupNameTable.ApproximateNumeric) .Synonim("percent") .Synonim("per") .Synonim("%") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, TypesNameTable.Decimal) .TypeProperty(NameTable.LanguageTypeNameShort, "System.String", "decimal") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, "System.Data.SqlDbType.Decimal") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, "decimal(5,3)") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "0") .TypeProperty(NameTable.DefaultValue, TypesNameTable.Decimal, "0") .TypeProperty(NameTable.XsdTypeName, TypesNameTable.String, XsdTypesNameTable.Decimal); }
/// <summary> /// Defines the Binary type /// </summary> /// <param name="builder">type system builder</param> protected abstract void Binary(TypeSystemBuilder builder);
/// <summary> /// Defines the Text type /// </summary> /// <param name="builder">type system builder</param> protected virtual void Text(TypeSystemBuilder builder) { builder .Type("Text", DataTypeGroupNameTable.CharString) .Synonim("text") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, TypesNameTable.String) .TypeProperty(NameTable.LanguageTypeNameShort, TypesNameTable.String, "Text") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, "Text") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, "Text") .TypeProperty(NameTable.DbReaderGetMethod, TypesNameTable.String, "Text") .TypeProperty(NameTable.IsLongText, TypesNameTable.Boolean, "true") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "None") .TypeProperty(NameTable.DefaultValue, TypesNameTable.String, "None"); }
/// <summary> /// Defines the Byte type /// </summary> /// <param name="builder">type system builder</param> protected abstract void Byte(TypeSystemBuilder builder);
/// <summary> /// Defines the Text type /// </summary> /// <param name="builder">A <see cref="TypeSystemBuilder"/> instance</param> protected override void Text(TypeSystemBuilder builder) { builder .Type("Text", DataTypeGroupNameTable.CharString) .Synonim("text") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, TypesNameTable.String) .TypeProperty(NameTable.LanguageTypeNameShort, "System.String", "string") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, "Char") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, "NCLOB") .TypeProperty(NameTable.DbReaderGetMethod, TypesNameTable.String, "GetString") .TypeProperty(NameTable.IsLongText, TypesNameTable.Boolean, "true") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "null") .TypeProperty(NameTable.DefaultValue, TypesNameTable.String, "null"); }
/// <summary> /// Defines the Currency type /// </summary> /// <param name="builder">type system builder</param> protected abstract void Currency(TypeSystemBuilder builder);
/// <summary> /// Defines the String type /// </summary> /// <param name="builder">type system builder</param> protected abstract void Double(TypeSystemBuilder builder);
/// <summary> /// Defines the Decimal type /// </summary> /// <param name="builder">type system builder</param> protected abstract void Decimal(TypeSystemBuilder builder);
/// <summary> /// Defines the Long|Int64 type. /// </summary> /// <param name="builder"></param> protected override void Int64(TypeSystemBuilder builder) { builder .Type("Int64", DataTypeGroupNameTable.ExactNumeric) .Synonim("long") .TypeProperty(NameTable.LanguageTypeName, TypesNameTable.String, TypesNameTable.Int64) .TypeProperty(NameTable.LanguageTypeNameShort, TypesNameTable.String, "long") .TypeProperty(NameTable.LanguageDbTypeName, TypesNameTable.String, "System.Data.SqlDbType.BigInt") .TypeProperty(NameTable.DdlColumnDeclare, TypesNameTable.String, "bigint") .TypeProperty(NameTable.LanguageDefaultValue, TypesNameTable.String, "0") .TypeProperty(NameTable.DefaultValue, TypesNameTable.Int64, "0") .TypeProperty(NameTable.XsdTypeName, TypesNameTable.String, XsdTypesNameTable.Long); }