@@ -1533,23 +1533,39 @@ class Database extends common.GrpcServiceObject {
1533
1533
) : void ;
1534
1534
async getDatabaseDialect (
1535
1535
optionsOrCallback ?: CallOptions | GetDatabaseDialectCallback ,
1536
- cb ?: GetDatabaseDialectCallback
1536
+ callback ?: GetDatabaseDialectCallback
1537
1537
) : Promise <
1538
1538
| EnumKey < typeof databaseAdmin . spanner . admin . database . v1 . DatabaseDialect >
1539
1539
| undefined
1540
1540
> {
1541
1541
const gaxOptions =
1542
- typeof optionsOrCallback === 'object' ? optionsOrCallback : { } ;
1542
+ typeof optionsOrCallback === 'object'
1543
+ ? ( optionsOrCallback as CallOptions )
1544
+ : { } ;
1543
1545
1544
- if (
1545
- this . databaseDialect === 'DATABASE_DIALECT_UNSPECIFIED' ||
1546
- this . databaseDialect === null ||
1547
- this . databaseDialect === undefined
1548
- ) {
1549
- const [ metadata ] = await this . getMetadata ( gaxOptions ) ;
1550
- this . databaseDialect = metadata . databaseDialect ;
1546
+ const cb =
1547
+ typeof optionsOrCallback === 'function'
1548
+ ? ( optionsOrCallback as GetDatabaseDialectCallback )
1549
+ : callback ;
1550
+
1551
+ try {
1552
+ if (
1553
+ this . databaseDialect === 'DATABASE_DIALECT_UNSPECIFIED' ||
1554
+ this . databaseDialect === null ||
1555
+ this . databaseDialect === undefined
1556
+ ) {
1557
+ const [ metadata ] = await this . getMetadata ( gaxOptions ) ;
1558
+ this . databaseDialect = metadata . databaseDialect ;
1559
+ }
1560
+ if ( cb ) {
1561
+ cb ( null , this . databaseDialect ) ;
1562
+ return ;
1563
+ }
1564
+ return this . databaseDialect || undefined ;
1565
+ } catch ( err ) {
1566
+ cb ! ( err as grpc . ServiceError ) ;
1567
+ return ;
1551
1568
}
1552
- return this . databaseDialect || undefined ;
1553
1569
}
1554
1570
1555
1571
/**
@@ -3665,6 +3681,7 @@ callbackifyAll(Database, {
3665
3681
'delete' ,
3666
3682
'exists' ,
3667
3683
'get' ,
3684
+ 'getDatabaseDialect' ,
3668
3685
'getMetadata' ,
3669
3686
'getSchema' ,
3670
3687
'getSessions' ,
0 commit comments