2 // System.Data.ProviderBase.DbMetaDataFactory
5 // Tim Coleman (tim@timcoleman.com)
7 // Copyright (C) Tim Coleman, 2003
11 // Copyright (C) 2004 Novell, Inc (http://www.novell.com)
13 // Permission is hereby granted, free of charge, to any person obtaining
14 // a copy of this software and associated documentation files (the
15 // "Software"), to deal in the Software without restriction, including
16 // without limitation the rights to use, copy, modify, merge, publish,
17 // distribute, sublicense, and/or sell copies of the Software, and to
18 // permit persons to whom the Software is furnished to do so, subject to
19 // the following conditions:
21 // The above copyright notice and this permission notice shall be
22 // included in all copies or substantial portions of the Software.
24 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
25 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
26 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
27 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
28 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
29 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
30 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
35 using System
.Data
.Common
;
38 namespace System
.Data
.ProviderBase
{
39 public class DbMetaDataFactory
45 string serverVersionNormalized
;
52 public DbMetaDataFactory (Stream XmlStream
, string serverVersion
, string serverVersionNormalized
)
54 this.xmlStream
= XmlStream
;
55 this.serverVersion
= serverVersion
;
56 this.serverVersionNormalized
= serverVersionNormalized
;
59 #endregion // Constructors
64 protected DataSet CollectionDataSet
{
65 get { throw new NotImplementedException (); }
68 protected string ServerVersion
{
69 get { return serverVersion; }
72 protected string ServerVersionNormalized
{
73 get { return serverVersionNormalized; }
76 #endregion // Properties
81 protected DataTable
CloneAndFilterCollection (string collectionName
, string[] hiddenColumnNames
)
83 throw new NotImplementedException ();
87 public void Dispose ()
89 throw new NotImplementedException ();
93 protected virtual void Dispose (bool disposing
)
95 throw new NotImplementedException ();
99 public virtual DataTable
GetSchema (DbConnection connection
, DbConnectionInternal internalConnection
, string collectionName
, string[] restrictions
)
101 throw new NotImplementedException ();
105 public virtual DataTable
PrepareCollection (string collectionName
, string[] restrictions
, DbConnection connection
, DbConnectionInternal internalConnection
)
107 throw new NotImplementedException ();
110 #endregion // Methods
112 public class CollectionNames
116 public const string DataSourceInformation
= "DataSourceInformation";
117 public const string DataTypes
= "DataTypes";
118 public const string MetaDataCollections
= "MetaDataCollections";
119 public const string ReservedWords
= "ReservedWords";
120 public const string Restrictions
= "Restrictions";
127 protected CollectionNames ()
131 #endregion // Constructors
134 public class ColumnNames
138 public const string CollectionName
= "CollectionName";
139 public const string ColumnSize
= "ColumnSize";
140 public const string CompositeIdentifierSeparatorPattern
= "CompositeIdentifierSeparatorPattern";
141 public const string CreateFormat
= "CreateFormat";
142 public const string CreateParameters
= "CreateParameters";
143 public const string DataSourceProductName
= "DataSourceProductName";
144 public const string DataSourceProductVersion
= "DataSourceProductVersion";
145 public const string DataSourceProductVersionNormalized
= "DataSourceProductVersionNormalized";
146 public const string DataType
= "DataType";
147 public const string GroupByBehavior
= "GroupByBehavior";
148 public const string IdentifierCase
= "IdentifierCase";
149 public const string IdentifierPattern
= "IdentifierPattern";
150 public const string IsAutoIncrementable
= "IsAutoIncrementable";
151 public const string IsBestMatch
= "IsBestMatch";
152 public const string IsCaseSensitive
= "IsCaseSensitive";
153 public const string IsFixedLength
= "IsFixedLength";
154 public const string IsFixedPrecisionScale
= "IsFixedPrecisionScale";
155 public const string IsLiteralSupported
= "IsLiteralSupported";
156 public const string IsLong
= "IsLong";
157 public const string IsNullable
= "IsNullable";
158 public const string IsSearchable
= "IsSearchable";
159 public const string IsSearchableWithLike
= "IsSearchableWithLike";
160 public const string IsUnsigned
= "IsUnsigned";
161 public const string LiteralPrefix
= "LiteralPrefix";
162 public const string LiteralSuffix
= "LiteralSuffix";
163 public const string MaximumScale
= "MaximumScale";
164 public const string MinimumScale
= "MinimumScale";
165 public const string NumberOfIdentifierParts
= "NumberOfIdentifierParts";
166 public const string NumberOfRestrictions
= "NumberOfRestrictions";
167 public const string OrderByColumnsInSelect
= "OrderByColumnsInSelect";
168 public const string ParameterMarkerFormat
= "ParameterMarkerFormat";
169 public const string ParameterMarkerPattern
= "ParameterMarkerPattern";
170 public const string ParameterNameMaxLength
= "ParameterNameMaxLength";
171 public const string ProviderDbType
= "ProviderDbType";
172 public const string QuotedIdentifierCase
= "QuotedIdentifierCase";
173 public const string QuotedIdentifierPattern
= "QuotedIdentifierPattern";
174 public const string ReservedWord
= "ReservedWord";
175 public const string SQLJoinSupport
= "SQLJoinSupport";
176 public const string StatementSeparatorPattern
= "StatementSeparatorPattern";
177 public const string StringLiteralPattern
= "StringLiteralPattern";
178 public const string TypeName
= "TypeName";
185 public ColumnNames ()
189 #endregion // Constructors