protected override string GetDbProviderManifestToken(DbConnection connection)
        {
            EFIngresStoreVersion version = null;

            UsingConnection(connection, conn =>
            {
                version = EFIngresStoreVersionUtils.GetStoreVersion(conn);
            });

            return(version.Token);
        }
        protected override bool DbDatabaseExists(DbConnection connection, int?commandTimeout, StoreItemCollection storeItemCollection)
        {
            if (storeItemCollection == null)
            {
                throw new ArgumentNullException("storeItemCollection must not be null");
            }

            var exists = false;

            UsingMasterConnection(connection, conn =>
            {
                var databaseName         = GetDatabaseName(conn);
                var storeVersion         = EFIngresStoreVersionUtils.GetStoreVersion(conn);
                var databaseExistsScript = DdlBuilder.CreateDatabaseExistsScript(databaseName);

                int result = (int)CreateCommand(conn, databaseExistsScript, commandTimeout).ExecuteScalar();
                exists     = (result == 1);
            });
            return(exists);
        }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="manifestToken">A token used to infer the capabilities of the store</param>
 public EFIngresProviderManifest(string manifestToken)
     : base(GetProviderManifest())
 {
     _version = EFIngresStoreVersionUtils.GetStoreVersion(manifestToken);
 }