@@ -27,7 +27,7 @@ import { TransactionExecutor } from './internal/transaction-executor'
27
27
import { Bookmark } from './internal/bookmark'
28
28
import { TxConfig } from './internal/tx-config'
29
29
import ConnectionProvider from './connection-provider'
30
- import { Query } from './types'
30
+ import { Query , SessionMode } from './types'
31
31
import Connection from './connection'
32
32
import { NumberOrInteger } from './graph-types'
33
33
@@ -47,7 +47,7 @@ interface TransactionConfig {
47
47
* @access public
48
48
*/
49
49
class Session {
50
- private _mode : string
50
+ private _mode : SessionMode
51
51
private _database : string
52
52
private _reactive : boolean
53
53
private _fetchSize : number
@@ -80,9 +80,9 @@ class Session {
80
80
reactive,
81
81
fetchSize
82
82
} : {
83
- mode : string
83
+ mode : SessionMode
84
84
connectionProvider : ConnectionProvider
85
- bookmark : Bookmark
85
+ bookmark ? : Bookmark
86
86
database : string
87
87
config : any
88
88
reactive : boolean
@@ -106,7 +106,7 @@ class Session {
106
106
} )
107
107
this . _open = true
108
108
this . _hasTx = false
109
- this . _lastBookmark = bookmark
109
+ this . _lastBookmark = bookmark || Bookmark . empty ( )
110
110
this . _transactionExecutor = _createTransactionExecutor ( config )
111
111
this . _onComplete = this . _onCompleteCallback . bind ( this )
112
112
}
@@ -233,7 +233,7 @@ class Session {
233
233
return this . _beginTransaction ( this . _mode , txConfig )
234
234
}
235
235
236
- _beginTransaction ( accessMode : string , txConfig : TxConfig ) : Transaction {
236
+ _beginTransaction ( accessMode : SessionMode , txConfig : TxConfig ) : Transaction {
237
237
if ( ! this . _open ) {
238
238
throw newError ( 'Cannot begin a transaction on a closed session.' )
239
239
}
@@ -333,7 +333,7 @@ class Session {
333
333
}
334
334
335
335
_runTransaction < T > (
336
- accessMode : string ,
336
+ accessMode : SessionMode ,
337
337
transactionConfig : TxConfig ,
338
338
transactionWork : TransactionWork < T >
339
339
) : Promise < T > {
@@ -369,7 +369,7 @@ class Session {
369
369
}
370
370
}
371
371
372
- _connectionHolderWithMode ( mode : string ) : ConnectionHolder {
372
+ _connectionHolderWithMode ( mode : SessionMode ) : ConnectionHolder {
373
373
if ( mode === ACCESS_MODE_READ ) {
374
374
return this . _readConnectionHolder
375
375
} else if ( mode === ACCESS_MODE_WRITE ) {
@@ -391,7 +391,7 @@ class Session {
391
391
/**
392
392
* @protected
393
393
*/
394
- static _validateSessionMode ( rawMode ?: string ) : string {
394
+ static _validateSessionMode ( rawMode ?: SessionMode ) : SessionMode {
395
395
const mode = rawMode || ACCESS_MODE_WRITE
396
396
if ( mode !== ACCESS_MODE_READ && mode !== ACCESS_MODE_WRITE ) {
397
397
throw newError ( 'Illegal session mode ' + mode )
0 commit comments