Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / ndp / fx / src / DataEntity / System / Data / Common / DbProviderManifest.cs / 1 / DbProviderManifest.cs
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....]
//---------------------------------------------------------------------
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Data.Metadata.Edm;
using System.Xml;
namespace System.Data.Common
{
///
/// Metadata Interface for all CLR types types
///
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")]
public abstract class DbProviderManifest
{
///
/// Constructor
///
protected DbProviderManifest()
{
}
/// Value to pass to GetInformation to get the StoreSchemaDefinition
public static readonly string StoreSchemaDefinition = "StoreSchemaDefinition";
/// Value to pass to GetInformation to get the StoreSchemaMapping
public static readonly string StoreSchemaMapping = "StoreSchemaMapping";
/// Value to pass to GetInformation to get the ConceptualSchemaDefinition
public static readonly string ConceptualSchemaDefinition = "ConceptualSchemaDefinition";
// System Facet Info
///
/// Name of the MaxLength Facet
///
internal const string MaxLengthFacetName = "MaxLength";
///
/// Name of the Unicode Facet
///
internal const string UnicodeFacetName = "Unicode";
///
/// Name of the FixedLength Facet
///
internal const string FixedLengthFacetName = "FixedLength";
///
/// Name of the Precision Facet
///
internal const string PrecisionFacetName = "Precision";
///
/// Name of the Scale Facet
///
internal const string ScaleFacetName = "Scale";
///
/// Name of the Nullable Facet
///
internal const string NullableFacetName = "Nullable";
///
/// Name of the DefaultValue Facet
///
internal const string DefaultValueFacetName = "DefaultValue";
///
/// Name of the Collation Facet
///
internal const string CollationFacetName = "Collation";
///
/// Returns the namespace used by this provider manifest
///
public abstract string NamespaceName {get;}
///
/// Return the set of types supported by the store
///
/// A collection of primitive types
public abstract System.Collections.ObjectModel.ReadOnlyCollection GetStoreTypes();
///
/// Returns all the edm functions supported by the provider manifest.
///
/// A collection of edm functions.
public abstract System.Collections.ObjectModel.ReadOnlyCollection GetStoreFunctions();
///
/// Returns all the FacetDescriptions for a particular type
///
/// the type to return FacetDescriptions for
/// The FacetDescriptions for the type given
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "edm")]
public abstract System.Collections.ObjectModel.ReadOnlyCollection GetFacetDescriptions(EdmType edmType);
///
/// This method allows a provider writer to take a type and a set of facets
/// and reason about what the best mapped equivalent type in EDM would be.
///
/// A TypeUsage encapsulating a store type and a set of facets
/// A TypeUsage encapsulating an EDM type and a set of facets
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Edm")]
public abstract TypeUsage GetEdmType(TypeUsage storeType);
///
/// This method allows a provider writer to take a type and a set of facets
/// and reason about what the best mapped equivalent type in the store would be.
///
/// A TypeUsage encapsulating an EDM type and a set of facets
/// A TypeUsage encapsulating a store type and a set of facets
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "edm")]
public abstract TypeUsage GetStoreType(TypeUsage edmType);
///
/// Providers should override this to return information specific to their provider.
///
/// This method should never return null.
///
/// The name of the information to be retrieved.
/// An XmlReader at the begining of the information requested.
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")]
protected abstract XmlReader GetDbInformation(string informationType);
///
/// Gets framework and provider specific information
///
/// This method should never return null.
///
/// The name of the information to be retrieved.
/// An XmlReader at the begining of the information requested.
public XmlReader GetInformation(string informationType)
{
XmlReader reader = null;
try
{
reader = GetDbInformation(informationType);
}
catch (Exception e)
{
// we should not be wrapping all exceptions
if (EntityUtil.IsCatchableExceptionType(e))
{
// we don't want folks to have to know all the various types of exceptions that can
// occur, so we just rethrow a ProviderIncompatibleException and make whatever we caught
// the inner exception of it.
throw EntityUtil.ProviderIncompatible(
System.Data.Entity.Strings.EntityClient_FailedToGetInformation(informationType), e);
}
throw;
}
if (reader == null)
{
// if the provider returned null for the conceptual schema definition, return the default one
if (informationType == ConceptualSchemaDefinition)
{
return DbProviderServices.GetConceptualSchemaDescription();
}
throw EntityUtil.ProviderIncompatible(System.Data.Entity.Strings.ProviderReturnedNullForGetDbInformation(informationType));
}
return reader;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....]
//---------------------------------------------------------------------
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Data.Metadata.Edm;
using System.Xml;
namespace System.Data.Common
{
///
/// Metadata Interface for all CLR types types
///
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")]
public abstract class DbProviderManifest
{
///
/// Constructor
///
protected DbProviderManifest()
{
}
/// Value to pass to GetInformation to get the StoreSchemaDefinition
public static readonly string StoreSchemaDefinition = "StoreSchemaDefinition";
/// Value to pass to GetInformation to get the StoreSchemaMapping
public static readonly string StoreSchemaMapping = "StoreSchemaMapping";
/// Value to pass to GetInformation to get the ConceptualSchemaDefinition
public static readonly string ConceptualSchemaDefinition = "ConceptualSchemaDefinition";
// System Facet Info
///
/// Name of the MaxLength Facet
///
internal const string MaxLengthFacetName = "MaxLength";
///
/// Name of the Unicode Facet
///
internal const string UnicodeFacetName = "Unicode";
///
/// Name of the FixedLength Facet
///
internal const string FixedLengthFacetName = "FixedLength";
///
/// Name of the Precision Facet
///
internal const string PrecisionFacetName = "Precision";
///
/// Name of the Scale Facet
///
internal const string ScaleFacetName = "Scale";
///
/// Name of the Nullable Facet
///
internal const string NullableFacetName = "Nullable";
///
/// Name of the DefaultValue Facet
///
internal const string DefaultValueFacetName = "DefaultValue";
///
/// Name of the Collation Facet
///
internal const string CollationFacetName = "Collation";
///
/// Returns the namespace used by this provider manifest
///
public abstract string NamespaceName {get;}
///
/// Return the set of types supported by the store
///
/// A collection of primitive types
public abstract System.Collections.ObjectModel.ReadOnlyCollection GetStoreTypes();
///
/// Returns all the edm functions supported by the provider manifest.
///
/// A collection of edm functions.
public abstract System.Collections.ObjectModel.ReadOnlyCollection GetStoreFunctions();
///
/// Returns all the FacetDescriptions for a particular type
///
/// the type to return FacetDescriptions for
/// The FacetDescriptions for the type given
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "edm")]
public abstract System.Collections.ObjectModel.ReadOnlyCollection GetFacetDescriptions(EdmType edmType);
///
/// This method allows a provider writer to take a type and a set of facets
/// and reason about what the best mapped equivalent type in EDM would be.
///
/// A TypeUsage encapsulating a store type and a set of facets
/// A TypeUsage encapsulating an EDM type and a set of facets
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Edm")]
public abstract TypeUsage GetEdmType(TypeUsage storeType);
///
/// This method allows a provider writer to take a type and a set of facets
/// and reason about what the best mapped equivalent type in the store would be.
///
/// A TypeUsage encapsulating an EDM type and a set of facets
/// A TypeUsage encapsulating a store type and a set of facets
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "edm")]
public abstract TypeUsage GetStoreType(TypeUsage edmType);
///
/// Providers should override this to return information specific to their provider.
///
/// This method should never return null.
///
/// The name of the information to be retrieved.
/// An XmlReader at the begining of the information requested.
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")]
protected abstract XmlReader GetDbInformation(string informationType);
///
/// Gets framework and provider specific information
///
/// This method should never return null.
///
/// The name of the information to be retrieved.
/// An XmlReader at the begining of the information requested.
public XmlReader GetInformation(string informationType)
{
XmlReader reader = null;
try
{
reader = GetDbInformation(informationType);
}
catch (Exception e)
{
// we should not be wrapping all exceptions
if (EntityUtil.IsCatchableExceptionType(e))
{
// we don't want folks to have to know all the various types of exceptions that can
// occur, so we just rethrow a ProviderIncompatibleException and make whatever we caught
// the inner exception of it.
throw EntityUtil.ProviderIncompatible(
System.Data.Entity.Strings.EntityClient_FailedToGetInformation(informationType), e);
}
throw;
}
if (reader == null)
{
// if the provider returned null for the conceptual schema definition, return the default one
if (informationType == ConceptualSchemaDefinition)
{
return DbProviderServices.GetConceptualSchemaDescription();
}
throw EntityUtil.ProviderIncompatible(System.Data.Entity.Strings.ProviderReturnedNullForGetDbInformation(informationType));
}
return reader;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MailMessageEventArgs.cs
- DataService.cs
- OletxDependentTransaction.cs
- UpDownEvent.cs
- DllNotFoundException.cs
- SecureConversationVersion.cs
- MultipleViewPattern.cs
- ObjectHandle.cs
- PasswordTextNavigator.cs
- JournalEntryListConverter.cs
- Italic.cs
- ListViewGroupItemCollection.cs
- MimeFormatter.cs
- SoapAttributes.cs
- Enum.cs
- ChangesetResponse.cs
- CopyCodeAction.cs
- WebHostScriptMappingsInstallComponent.cs
- UriSection.cs
- RemotingConfiguration.cs
- TypedDataSetSchemaImporterExtension.cs
- StylusEventArgs.cs
- StateMachineSubscription.cs
- EntityCommand.cs
- ViewPort3D.cs
- BindingRestrictions.cs
- TreeNode.cs
- MarkupCompilePass1.cs
- CellCreator.cs
- TemplatePagerField.cs
- ClientTargetCollection.cs
- UidPropertyAttribute.cs
- MatrixTransform.cs
- MenuEventArgs.cs
- DataGridViewImageCell.cs
- Peer.cs
- returneventsaver.cs
- IntegerCollectionEditor.cs
- Condition.cs
- XpsLiterals.cs
- ChtmlMobileTextWriter.cs
- LayoutExceptionEventArgs.cs
- PackageDigitalSignatureManager.cs
- JsonReader.cs
- SharedUtils.cs
- SrgsRuleRef.cs
- ImageAnimator.cs
- OSFeature.cs
- Serializer.cs
- FunctionUpdateCommand.cs
- BinaryFormatterWriter.cs
- IdleTimeoutMonitor.cs
- ViewManager.cs
- BitmapData.cs
- QueryOperationResponseOfT.cs
- WebPartMenu.cs
- LayoutTableCell.cs
- URI.cs
- PropertyEmitterBase.cs
- TransactionManager.cs
- PartialArray.cs
- XmlCharType.cs
- ResourceDictionary.cs
- EntryIndex.cs
- Trace.cs
- MessageSecurityProtocol.cs
- ADMembershipProvider.cs
- AccessControlList.cs
- Vector3DCollection.cs
- ColumnCollection.cs
- WebPartAuthorizationEventArgs.cs
- InputBindingCollection.cs
- RequestDescription.cs
- Sentence.cs
- StandardOleMarshalObject.cs
- base64Transforms.cs
- TypographyProperties.cs
- Color.cs
- DecimalConstantAttribute.cs
- TypefaceMap.cs
- UserControlBuildProvider.cs
- FolderLevelBuildProviderCollection.cs
- ContentOperations.cs
- DbUpdateCommandTree.cs
- ManifestSignedXml.cs
- BufferedWebEventProvider.cs
- MetricEntry.cs
- _BaseOverlappedAsyncResult.cs
- TextBoxLine.cs
- TablePattern.cs
- Terminate.cs
- Assert.cs
- RepeatBehaviorConverter.cs
- SrgsItemList.cs
- RTLAwareMessageBox.cs
- TextHidden.cs
- JournalEntry.cs
- Transform3DGroup.cs
- SR.cs
- Identifier.cs