2018-09-23 00:28:50 +12:00
|
|
|
'use strict'
|
|
|
|
|
2018-09-14 02:10:51 +10:00
|
|
|
const { EventEmitter } = require('events')
|
2019-01-17 09:05:10 -08:00
|
|
|
const { app, deprecate } = require('electron')
|
2019-03-18 12:37:06 -07:00
|
|
|
const { fromPartition, Session, Cookies, NetLog, Protocol } = process.electronBinding('session')
|
2016-06-01 10:42:24 +09:00
|
|
|
|
2016-08-01 19:35:51 +09:00
|
|
|
// Public API.
|
2016-07-12 21:01:49 +09:00
|
|
|
Object.defineProperties(exports, {
|
|
|
|
defaultSession: {
|
|
|
|
enumerable: true,
|
|
|
|
get () { return fromPartition('') }
|
|
|
|
},
|
|
|
|
fromPartition: {
|
|
|
|
enumerable: true,
|
|
|
|
value: fromPartition
|
2016-01-11 18:40:23 -08:00
|
|
|
}
|
2016-03-24 13:15:04 -07:00
|
|
|
})
|
2016-06-01 10:42:24 +09:00
|
|
|
|
2016-08-02 20:38:35 +09:00
|
|
|
Object.setPrototypeOf(Session.prototype, EventEmitter.prototype)
|
2016-09-21 16:24:03 -07:00
|
|
|
Object.setPrototypeOf(Cookies.prototype, EventEmitter.prototype)
|
2016-08-02 20:38:35 +09:00
|
|
|
|
|
|
|
Session.prototype._init = function () {
|
|
|
|
app.emit('session-created', this)
|
|
|
|
}
|
2019-05-23 15:31:38 -07:00
|
|
|
|
|
|
|
const _originalStartLogging = NetLog.prototype.startLogging
|
|
|
|
NetLog.prototype.startLogging = function (path) {
|
|
|
|
this._currentlyLoggingPath = path
|
|
|
|
try {
|
|
|
|
return _originalStartLogging.call(this, path)
|
|
|
|
} catch (e) {
|
|
|
|
this._currentlyLoggingPath = null
|
|
|
|
throw e
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
const _originalStopLogging = NetLog.prototype.stopLogging
|
|
|
|
NetLog.prototype.stopLogging = function () {
|
|
|
|
this._currentlyLoggingPath = null
|
|
|
|
return _originalStopLogging.call(this)
|
|
|
|
}
|
|
|
|
|
|
|
|
const currentlyLoggingPathDeprecated = deprecate.warnOnce('currentlyLoggingPath')
|
|
|
|
Object.defineProperties(NetLog.prototype, {
|
|
|
|
currentlyLoggingPath: {
|
|
|
|
enumerable: true,
|
|
|
|
get () {
|
|
|
|
currentlyLoggingPathDeprecated()
|
|
|
|
return this._currentlyLoggingPath == null ? '' : this._currentlyLoggingPath
|
|
|
|
}
|
|
|
|
}
|
|
|
|
})
|