Skip to content

Commit 7b1c26f

Browse files
committed
Added Configuration.useLocalStorage
1 parent e781aa1 commit 7b1c26f

File tree

3 files changed

+16
-0
lines changed

3 files changed

+16
-0
lines changed

src/configuration/Configuration.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -335,6 +335,10 @@ export class Configuration implements IConfigurationSettings {
335335
this.addPlugin(new ReferenceIdPlugin());
336336
}
337337

338+
public useLocalStorage(): void {
339+
throw 'Must be overridden.';
340+
}
341+
338342
// TODO: Support a min log level.
339343
public useDebugLogger(): void {
340344
this.log = new ConsoleLog();

src/exceptionless.node.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { NodeErrorParser } from './services/NodeErrorParser';
44
import { NodeModuleCollector } from './services/NodeModuleCollector';
55
import { NodeRequestInfoCollector } from './services/NodeRequestInfoCollector';
66
import { NodeSubmissionAdapter } from './submission/NodeSubmissionAdapter';
7+
import { NodeFileStorage } from './storage/NodeFileStorage';
78
import { ExceptionlessClient } from './ExceptionlessClient';
89

910
const EXIT: string = 'exit';
@@ -18,6 +19,10 @@ defaults.moduleCollector = new NodeModuleCollector();
1819
defaults.requestInfoCollector = new NodeRequestInfoCollector();
1920
defaults.submissionAdapter = new NodeSubmissionAdapter();
2021

22+
Configuration.prototype.useLocalStorage = function() {
23+
this.storage = new NodeFileStorage('.exceptionless');
24+
};
25+
2126
function getListenerCount(emitter, event: string): number {
2227
if (emitter.listenerCount) {
2328
return emitter.listenerCount(event);

src/exceptionless.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { DefaultErrorParser } from './services/DefaultErrorParser';
44
import { DefaultModuleCollector } from './services/DefaultModuleCollector';
55
import { DefaultRequestInfoCollector } from './services/DefaultRequestInfoCollector';
66
import { DefaultSubmissionAdapter } from './submission/DefaultSubmissionAdapter';
7+
import { BrowserStorage } from './storage/BrowserStorage';
78
import { ExceptionlessClient } from './ExceptionlessClient';
89
import { Utils } from './Utils';
910

@@ -44,6 +45,12 @@ function processJQueryAjaxError(event, xhr, settings, error:string): void {
4445
}
4546
*/
4647

48+
Configuration.prototype.useLocalStorage = function() {
49+
if (BrowserStorage.isAvailable()) {
50+
this.storage = new BrowserStorage();
51+
}
52+
};
53+
4754
let defaults = Configuration.defaults;
4855
let settings = getDefaultsSettingsFromScriptTag();
4956
if (settings && (settings.apiKey || settings.serverUrl)) {

0 commit comments

Comments
 (0)