Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / DataOracleClient / System / Data / OracleClient / OracleConnectionFactory.cs / 1 / OracleConnectionFactory.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Data.OracleClient { using System; using System.Data.Common; using System.Data.ProviderBase; using System.Diagnostics; using System.Collections.Specialized; using System.Configuration; using System.IO; sealed internal class OracleConnectionFactory : DbConnectionFactory { private OracleConnectionFactory() : base(OraclePerformanceCounters.SingletonInstance) {} public static readonly OracleConnectionFactory SingletonInstance = new OracleConnectionFactory(); public const string _metaDataXml = "MetaDataXml"; override public DbProviderFactory ProviderFactory { get { return OracleClientFactory.Instance; } } override protected DbConnectionInternal CreateConnection(DbConnectionOptions options, object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) { DbConnectionInternal result = new OracleInternalConnection(options as OracleConnectionString); return result; } override protected DbConnectionOptions CreateConnectionOptions(string connectionOptions, DbConnectionOptions previous) { Debug.Assert(!ADP.IsEmpty(connectionOptions), "null connectionOptions"); OracleConnectionString result = new OracleConnectionString(connectionOptions); return result; } override protected DbConnectionPoolGroupOptions CreateConnectionPoolGroupOptions( DbConnectionOptions connectionOptions ) { OracleConnectionString opt = (OracleConnectionString)connectionOptions; DbConnectionPoolGroupOptions poolGroupOptions = null; if (opt.Pooling) { poolGroupOptions = new DbConnectionPoolGroupOptions( opt.IntegratedSecurity, opt.MinPoolSize, opt.MaxPoolSize, 30000, // creationTimeout: 30 seconds opt.LoadBalanceTimeout, opt.Enlist, false); // useDeactivateQueue } return poolGroupOptions; } override protected DbMetaDataFactory CreateMetaDataFactory(DbConnectionInternal internalConnection, out bool cacheMetaDataFactory){ Debug.Assert (internalConnection != null,"internalConnection may not be null."); cacheMetaDataFactory = false; NameValueCollection settings = (NameValueCollection)PrivilegedConfigurationManager.GetSection("system.data.oracleclient"); Stream XMLStream =null; if (settings != null){ string [] values = settings.GetValues(_metaDataXml); if (values != null) { XMLStream = ADP.GetXmlStreamFromValues(values,_metaDataXml); } } // if the xml obtained from machine.config use the embedded XML resource if (XMLStream == null){ XMLStream = System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream("System.Data.OracleClient.OracleMetaData.xml"); cacheMetaDataFactory = true; } Debug.Assert (XMLStream != null,"XMLstream may not be null."); return new DbMetaDataFactory (XMLStream, internalConnection.ServerVersion, internalConnection.ServerVersionNormalized); } override internal DbConnectionPoolGroup GetConnectionPoolGroup(DbConnection connection) { OracleConnection c = (connection as OracleConnection); if (null != c) { return c.PoolGroup; } return null; } override internal DbConnectionInternal GetInnerConnection(DbConnection connection) { OracleConnection c = (connection as OracleConnection); if (null != c) { return c.InnerConnection; } return null; } override protected int GetObjectId(DbConnection connection) { OracleConnection c = (connection as OracleConnection); if (null != c) { return c.ObjectID; } return 0; } override internal void PermissionDemand(DbConnection outerConnection) { OracleConnection c = (outerConnection as OracleConnection); if (null != c) { c.PermissionDemand(); } } override internal void SetConnectionPoolGroup(DbConnection outerConnection, DbConnectionPoolGroup poolGroup) { OracleConnection c = (outerConnection as OracleConnection); if (null != c) { c.PoolGroup = poolGroup; } } override internal void SetInnerConnectionEvent(DbConnection owningObject, DbConnectionInternal to) { OracleConnection c = (owningObject as OracleConnection); if (null != c) { c.SetInnerConnectionEvent(to); } } override internal bool SetInnerConnectionFrom(DbConnection owningObject, DbConnectionInternal to, DbConnectionInternal from) { OracleConnection c = (owningObject as OracleConnection); if (null != c) { return c.SetInnerConnectionFrom(to, from); } return false; } override internal void SetInnerConnectionTo(DbConnection owningObject, DbConnectionInternal to) { OracleConnection c = (owningObject as OracleConnection); if (null != c) { c.SetInnerConnectionTo(to); } } } sealed internal class OraclePerformanceCounters : DbConnectionPoolCounters { private const string CategoryName = ".NET Data Provider for Oracle"; private const string CategoryHelp = "Counters for System.Data.OracleClient"; public static readonly OraclePerformanceCounters SingletonInstance = new OraclePerformanceCounters(); [System.Diagnostics.PerformanceCounterPermissionAttribute(System.Security.Permissions.SecurityAction.Assert, PermissionAccess=PerformanceCounterPermissionAccess.Write, MachineName=".", CategoryName=CategoryName)] private OraclePerformanceCounters() : base (CategoryName, CategoryHelp) { } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Data.OracleClient { using System; using System.Data.Common; using System.Data.ProviderBase; using System.Diagnostics; using System.Collections.Specialized; using System.Configuration; using System.IO; sealed internal class OracleConnectionFactory : DbConnectionFactory { private OracleConnectionFactory() : base(OraclePerformanceCounters.SingletonInstance) {} public static readonly OracleConnectionFactory SingletonInstance = new OracleConnectionFactory(); public const string _metaDataXml = "MetaDataXml"; override public DbProviderFactory ProviderFactory { get { return OracleClientFactory.Instance; } } override protected DbConnectionInternal CreateConnection(DbConnectionOptions options, object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) { DbConnectionInternal result = new OracleInternalConnection(options as OracleConnectionString); return result; } override protected DbConnectionOptions CreateConnectionOptions(string connectionOptions, DbConnectionOptions previous) { Debug.Assert(!ADP.IsEmpty(connectionOptions), "null connectionOptions"); OracleConnectionString result = new OracleConnectionString(connectionOptions); return result; } override protected DbConnectionPoolGroupOptions CreateConnectionPoolGroupOptions( DbConnectionOptions connectionOptions ) { OracleConnectionString opt = (OracleConnectionString)connectionOptions; DbConnectionPoolGroupOptions poolGroupOptions = null; if (opt.Pooling) { poolGroupOptions = new DbConnectionPoolGroupOptions( opt.IntegratedSecurity, opt.MinPoolSize, opt.MaxPoolSize, 30000, // creationTimeout: 30 seconds opt.LoadBalanceTimeout, opt.Enlist, false); // useDeactivateQueue } return poolGroupOptions; } override protected DbMetaDataFactory CreateMetaDataFactory(DbConnectionInternal internalConnection, out bool cacheMetaDataFactory){ Debug.Assert (internalConnection != null,"internalConnection may not be null."); cacheMetaDataFactory = false; NameValueCollection settings = (NameValueCollection)PrivilegedConfigurationManager.GetSection("system.data.oracleclient"); Stream XMLStream =null; if (settings != null){ string [] values = settings.GetValues(_metaDataXml); if (values != null) { XMLStream = ADP.GetXmlStreamFromValues(values,_metaDataXml); } } // if the xml obtained from machine.config use the embedded XML resource if (XMLStream == null){ XMLStream = System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream("System.Data.OracleClient.OracleMetaData.xml"); cacheMetaDataFactory = true; } Debug.Assert (XMLStream != null,"XMLstream may not be null."); return new DbMetaDataFactory (XMLStream, internalConnection.ServerVersion, internalConnection.ServerVersionNormalized); } override internal DbConnectionPoolGroup GetConnectionPoolGroup(DbConnection connection) { OracleConnection c = (connection as OracleConnection); if (null != c) { return c.PoolGroup; } return null; } override internal DbConnectionInternal GetInnerConnection(DbConnection connection) { OracleConnection c = (connection as OracleConnection); if (null != c) { return c.InnerConnection; } return null; } override protected int GetObjectId(DbConnection connection) { OracleConnection c = (connection as OracleConnection); if (null != c) { return c.ObjectID; } return 0; } override internal void PermissionDemand(DbConnection outerConnection) { OracleConnection c = (outerConnection as OracleConnection); if (null != c) { c.PermissionDemand(); } } override internal void SetConnectionPoolGroup(DbConnection outerConnection, DbConnectionPoolGroup poolGroup) { OracleConnection c = (outerConnection as OracleConnection); if (null != c) { c.PoolGroup = poolGroup; } } override internal void SetInnerConnectionEvent(DbConnection owningObject, DbConnectionInternal to) { OracleConnection c = (owningObject as OracleConnection); if (null != c) { c.SetInnerConnectionEvent(to); } } override internal bool SetInnerConnectionFrom(DbConnection owningObject, DbConnectionInternal to, DbConnectionInternal from) { OracleConnection c = (owningObject as OracleConnection); if (null != c) { return c.SetInnerConnectionFrom(to, from); } return false; } override internal void SetInnerConnectionTo(DbConnection owningObject, DbConnectionInternal to) { OracleConnection c = (owningObject as OracleConnection); if (null != c) { c.SetInnerConnectionTo(to); } } } sealed internal class OraclePerformanceCounters : DbConnectionPoolCounters { private const string CategoryName = ".NET Data Provider for Oracle"; private const string CategoryHelp = "Counters for System.Data.OracleClient"; public static readonly OraclePerformanceCounters SingletonInstance = new OraclePerformanceCounters(); [System.Diagnostics.PerformanceCounterPermissionAttribute(System.Security.Permissions.SecurityAction.Assert, PermissionAccess=PerformanceCounterPermissionAccess.Write, MachineName=".", CategoryName=CategoryName)] private OraclePerformanceCounters() : base (CategoryName, CategoryHelp) { } } } // 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
- ColumnMapVisitor.cs
- WebResourceUtil.cs
- MulticastDelegate.cs
- PartitionResolver.cs
- UnmanagedMemoryStreamWrapper.cs
- ipaddressinformationcollection.cs
- _HTTPDateParse.cs
- ImageDrawing.cs
- CodeLabeledStatement.cs
- OleDbError.cs
- NamedPipeTransportBindingElement.cs
- EventLogInformation.cs
- TextFormatterContext.cs
- Roles.cs
- DataGridTemplateColumn.cs
- WebServiceParameterData.cs
- AspNetCompatibilityRequirementsMode.cs
- SymLanguageVendor.cs
- _SecureChannel.cs
- TitleStyle.cs
- X509UI.cs
- PathSegmentCollection.cs
- SplineKeyFrames.cs
- ClockGroup.cs
- SqlDependency.cs
- ResumeStoryboard.cs
- UnsafeNetInfoNativeMethods.cs
- AuthenticationServiceManager.cs
- SingleSelectRootGridEntry.cs
- ReflectionHelper.cs
- COM2PropertyPageUITypeConverter.cs
- WebPartDeleteVerb.cs
- BoundField.cs
- PhysicalAddress.cs
- XPathNodeHelper.cs
- path.cs
- iisPickupDirectory.cs
- InlineObject.cs
- InputBinder.cs
- DPCustomTypeDescriptor.cs
- PipelineModuleStepContainer.cs
- TreeNodeCollection.cs
- DataGridTablesFactory.cs
- ExpressionEditor.cs
- ValidationErrorEventArgs.cs
- LocalizedNameDescriptionPair.cs
- precedingsibling.cs
- CqlGenerator.cs
- BooleanSwitch.cs
- FixedSOMLineCollection.cs
- StyleXamlParser.cs
- CodeAttributeDeclarationCollection.cs
- ControlUtil.cs
- RotateTransform3D.cs
- UniqueIdentifierService.cs
- ExceptionTrace.cs
- TimerElapsedEvenArgs.cs
- SqlVersion.cs
- DrawingCollection.cs
- HttpProfileBase.cs
- ButtonFlatAdapter.cs
- QueryHandler.cs
- FormsAuthentication.cs
- MatrixTransform.cs
- HttpResponse.cs
- PinnedBufferMemoryStream.cs
- PersistenceTypeAttribute.cs
- TextEditorSelection.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- GlobalItem.cs
- TransactionFlowOption.cs
- WebPartHeaderCloseVerb.cs
- Speller.cs
- RegexStringValidatorAttribute.cs
- InternalsVisibleToAttribute.cs
- MenuItemStyleCollection.cs
- HMACRIPEMD160.cs
- DataSourceViewSchemaConverter.cs
- WindowProviderWrapper.cs
- VisualStyleTypesAndProperties.cs
- ProtocolElementCollection.cs
- ResourceDisplayNameAttribute.cs
- BasicAsyncResult.cs
- SoapFault.cs
- IRCollection.cs
- CodeGroup.cs
- followingquery.cs
- Or.cs
- SessionStateUtil.cs
- Utils.cs
- XPathExpr.cs
- InputQueueChannel.cs
- Single.cs
- IxmlLineInfo.cs
- DocumentAutomationPeer.cs
- ListBoxAutomationPeer.cs
- RsaKeyGen.cs
- SHA384Managed.cs
- PolicyChain.cs
- LinkUtilities.cs