Skip to content

Commit

Permalink
Rename bandwidthSaveMode to isConnected in JupyterLab.IInfo
Browse files Browse the repository at this point in the history
  • Loading branch information
vkaidalov-rft committed Aug 10, 2021
1 parent 61e7a45 commit 2775683
Show file tree
Hide file tree
Showing 6 changed files with 29 additions and 25 deletions.
12 changes: 6 additions & 6 deletions packages/application/src/lab.ts
Expand Up @@ -26,7 +26,7 @@ export class JupyterLab extends JupyterFrontEnd<ILabShell> {
options.serviceManager ||
new ServiceManager({
standby: () => {
return this._info.bandwidthSaveMode || 'when-hidden';
return !this._info.isConnected || 'when-hidden';
}
})
});
Expand Down Expand Up @@ -221,15 +221,15 @@ export namespace JupyterLab {

/**
* Every periodic network polling should be paused while this is set
* to `true`. Extensions should use this value to decide whether to proceed
* to `false`. Extensions should use this value to decide whether to proceed
* with the polling.
* The extensions may also set this value to `true` if there is no need to
* The extensions may also set this value to `false` if there is no need to
* fetch anything from the server backend basing on some conditions
* (e.g. when an error message dialog is displayed).
* At the same time, the extensions are responsible for setting this value
* back to `false`.
* back to `true`.
*/
bandwidthSaveMode: boolean;
isConnected: boolean;
}

/**
Expand All @@ -241,7 +241,7 @@ export namespace JupyterLab {
disabled: { patterns: [], matches: [] },
mimeExtensions: [],
filesCached: PageConfig.getOption('cacheFiles').toLowerCase() === 'true',
bandwidthSaveMode: false
isConnected: true
};

/**
Expand Down
7 changes: 5 additions & 2 deletions packages/docmanager-extension/src/index.ts
Expand Up @@ -143,8 +143,11 @@ const docManagerPlugin: JupyterFrontEndPlugin<IDocumentManager> = {
translator,
collaborative: true,
docProviderFactory: docProviderFactory ?? undefined,
bandwidthSaveModeCallback: () => {
return info?.bandwidthSaveMode || false;
isConnectedCallback: () => {
if (info) {
return info.isConnected;
}
return true;
}
});

Expand Down
13 changes: 6 additions & 7 deletions packages/docmanager/src/manager.ts
Expand Up @@ -37,13 +37,12 @@ export class DocumentManager implements IDocumentManager {
*/
constructor(options: DocumentManager.IOptions) {
this.translator = options.translator || nullTranslator;
this._bandwidthSaveModeCallback =
options.bandwidthSaveModeCallback || (() => false);
this.registry = options.registry;
this.services = options.manager;
this._collaborative = !!options.collaborative;
this._dialogs = options.sessionDialogs || sessionContextDialogs;
this._docProviderFactory = options.docProviderFactory;
this._isConnectedCallback = options.isConnectedCallback || (() => true);

this._opener = options.opener;
this._when = options.when || options.manager.ready;
Expand Down Expand Up @@ -479,7 +478,7 @@ export class DocumentManager implements IDocumentManager {
});
const handler = new SaveHandler({
context,
bandwidthSaveModeCallback: this._bandwidthSaveModeCallback,
isConnectedCallback: this._isConnectedCallback,
saveInterval: this.autosaveInterval
});
Private.saveHandlerProperty.set(context, handler);
Expand Down Expand Up @@ -605,7 +604,7 @@ export class DocumentManager implements IDocumentManager {
private _dialogs: ISessionContext.IDialogs;
private _docProviderFactory: IDocumentProviderFactory | undefined;
private _collaborative: boolean;
private _bandwidthSaveModeCallback: () => boolean;
private _isConnectedCallback: () => boolean;
}

/**
Expand Down Expand Up @@ -663,10 +662,10 @@ export namespace DocumentManager {
collaborative?: boolean;

/**
* Autosaving should be paused while this callback function returns `true`.
* By default, it always returns `false`.
* Autosaving should be paused while this callback function returns `false`.
* By default, it always returns `true`.
*/
bandwidthSaveModeCallback?: () => boolean;
isConnectedCallback?: () => boolean;
}

/**
Expand Down
13 changes: 6 additions & 7 deletions packages/docmanager/src/savehandler.ts
Expand Up @@ -17,8 +17,7 @@ export class SaveHandler implements IDisposable {
*/
constructor(options: SaveHandler.IOptions) {
this._context = options.context;
this._bandwidthSaveModeCallback =
options.bandwidthSaveModeCallback || (() => false);
this._isConnectedCallback = options.isConnectedCallback || (() => true);
const interval = options.saveInterval || 120;
this._minInterval = interval * 1000;
this._interval = this._minInterval;
Expand Down Expand Up @@ -91,7 +90,7 @@ export class SaveHandler implements IDisposable {
return;
}
this._autosaveTimer = window.setTimeout(() => {
if (!this._bandwidthSaveModeCallback()) {
if (this._isConnectedCallback()) {
this._save();
}
}, this._interval);
Expand Down Expand Up @@ -148,7 +147,7 @@ export class SaveHandler implements IDisposable {
private _minInterval = -1;
private _interval = -1;
private _context: DocumentRegistry.Context;
private _bandwidthSaveModeCallback: () => boolean;
private _isConnectedCallback: () => boolean;
private _isActive = false;
private _inDialog = false;
private _isDisposed = false;
Expand All @@ -169,10 +168,10 @@ export namespace SaveHandler {
context: DocumentRegistry.Context;

/**
* Autosaving should be paused while this callback function returns `true`.
* By default, it always returns `false`.
* Autosaving should be paused while this callback function returns `false`.
* By default, it always returns `true`.
*/
bandwidthSaveModeCallback?: () => boolean;
isConnectedCallback?: () => boolean;

/**
* The minimum save interval in seconds (default is two minutes).
Expand Down
5 changes: 4 additions & 1 deletion packages/filebrowser-extension/src/index.ts
Expand Up @@ -275,7 +275,10 @@ const factory: JupyterFrontEndPlugin<IFileBrowserFactory> = {
driveName: options.driveName || '',
refreshInterval: options.refreshInterval,
refreshStandby: () => {
return info?.bandwidthSaveMode || 'when-hidden';
if (info) {
return !info.isConnected || 'when-hidden';
}
return 'when-hidden';
},
state:
options.state === null
Expand Down
4 changes: 2 additions & 2 deletions packages/hub-extension/src/index.ts
Expand Up @@ -155,7 +155,7 @@ const connectionlost: JupyterFrontEndPlugin<IConnectionLost> = {

showingError = true;
if (info) {
info.bandwidthSaveMode = true;
info.isConnected = false;
}

const result = await showDialog({
Expand All @@ -171,7 +171,7 @@ const connectionlost: JupyterFrontEndPlugin<IConnectionLost> = {
});

if (info) {
info.bandwidthSaveMode = false;
info.isConnected = true;
}
showingError = false;

Expand Down

0 comments on commit 2775683

Please sign in to comment.