@@ -27,12 +27,19 @@ export type PinotDriverConfiguration = {
2727 host ?: string ;
2828 port ?: string ;
2929 user ?: string ;
30+ database ?: string ;
3031 basicAuth ?: { user : string , password : string } ;
32+ authToken ?: string ;
3133 ssl ?: string | TLSConnectionOptions ;
3234 dataSource ?: string ;
3335 queryTimeout ?: number ;
3436} ;
3537
38+ type AuthorizationHeaders = {
39+ Authorization : string ;
40+ database ?: string ;
41+ } ;
42+
3643type PinotResponse = {
3744 exceptions : any [ ] ,
3845 minConsumingFreshnessTimeMs : number ,
@@ -92,12 +99,14 @@ export class PinotDriver extends BaseDriver implements DriverInterface {
9299 host : getEnv ( 'dbHost' , { dataSource } ) ,
93100 port : getEnv ( 'dbPort' , { dataSource } ) ,
94101 user : getEnv ( 'dbUser' , { dataSource } ) ,
102+ database : getEnv ( 'dbName' , { dataSource } ) ,
95103 basicAuth : getEnv ( 'dbPass' , { dataSource } )
96104 ? {
97105 user : getEnv ( 'dbUser' , { dataSource } ) ,
98106 password : getEnv ( 'dbPass' , { dataSource } ) ,
99107 }
100108 : undefined ,
109+ authToken : getEnv ( 'pinotAuthToken' , { dataSource } ) ,
101110 ssl : this . getSslOptions ( dataSource ) ,
102111 queryTimeout : getEnv ( 'dbQueryTimeout' , { dataSource } ) ,
103112 ...config
@@ -127,7 +136,17 @@ export class PinotDriver extends BaseDriver implements DriverInterface {
127136 } : value ) ) ) ;
128137 }
129138
130- public authorizationHeaders ( ) : { Authorization ?: string } {
139+ public authorizationHeaders ( ) : AuthorizationHeaders | { } {
140+ if ( this . config . authToken ) {
141+ const res : AuthorizationHeaders = { Authorization : `Bearer ${ this . config . authToken } ` } ;
142+
143+ if ( this . config . database ) {
144+ res . database = this . config . database ;
145+ }
146+
147+ return res ;
148+ }
149+
131150 if ( ! this . config . basicAuth ) {
132151 return { } ;
133152 }
0 commit comments