3.0 source code
This commit is contained in:
11
OfficeWeb/vendor/touch/src/log/Base.js
vendored
Normal file
11
OfficeWeb/vendor/touch/src/log/Base.js
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
//<feature logger>
|
||||
Ext.define('Ext.log.Base', {
|
||||
config: {},
|
||||
|
||||
constructor: function(config) {
|
||||
this.initConfig(config);
|
||||
|
||||
return this;
|
||||
}
|
||||
});
|
||||
//</feature>
|
||||
156
OfficeWeb/vendor/touch/src/log/Logger.js
vendored
Normal file
156
OfficeWeb/vendor/touch/src/log/Logger.js
vendored
Normal file
@@ -0,0 +1,156 @@
|
||||
//<feature logger>
|
||||
/**
|
||||
* @class Ext.Logger
|
||||
* Logs messages to help with debugging.
|
||||
*
|
||||
* ## Example
|
||||
*
|
||||
* Ext.Logger.deprecate('This method is no longer supported.');
|
||||
*
|
||||
* @singleton
|
||||
*/
|
||||
(function() {
|
||||
var Logger = Ext.define('Ext.log.Logger', {
|
||||
|
||||
extend: 'Ext.log.Base',
|
||||
|
||||
statics: {
|
||||
defaultPriority: 'info',
|
||||
|
||||
priorities: {
|
||||
/**
|
||||
* @method verbose
|
||||
* Convenience method for {@link #log} with priority 'verbose'.
|
||||
*/
|
||||
verbose: 0,
|
||||
/**
|
||||
* @method info
|
||||
* Convenience method for {@link #log} with priority 'info'.
|
||||
*/
|
||||
info: 1,
|
||||
/**
|
||||
* @method deprecate
|
||||
* Convenience method for {@link #log} with priority 'deprecate'.
|
||||
*/
|
||||
deprecate: 2,
|
||||
/**
|
||||
* @method warn
|
||||
* Convenience method for {@link #log} with priority 'warn'.
|
||||
*/
|
||||
warn: 3,
|
||||
/**
|
||||
* @method error
|
||||
* Convenience method for {@link #log} with priority 'error'.
|
||||
*/
|
||||
error: 4
|
||||
}
|
||||
},
|
||||
|
||||
config: {
|
||||
enabled: true,
|
||||
minPriority: 'deprecate',
|
||||
writers: {}
|
||||
},
|
||||
|
||||
/**
|
||||
* Logs a message to help with debugging.
|
||||
* @param {String} message Message to log.
|
||||
* @param {Number} priority Priority of the log message.
|
||||
*/
|
||||
log: function(message, priority, callerId) {
|
||||
if (!this.getEnabled()) {
|
||||
return this;
|
||||
}
|
||||
|
||||
var statics = Logger,
|
||||
priorities = statics.priorities,
|
||||
priorityValue = priorities[priority],
|
||||
caller = this.log.caller,
|
||||
callerDisplayName = '',
|
||||
writers = this.getWriters(),
|
||||
event, i, originalCaller;
|
||||
|
||||
if (!priority) {
|
||||
priority = 'info';
|
||||
}
|
||||
|
||||
if (priorities[this.getMinPriority()] > priorityValue) {
|
||||
return this;
|
||||
}
|
||||
|
||||
if (!callerId) {
|
||||
callerId = 1;
|
||||
}
|
||||
|
||||
if (Ext.isArray(message)) {
|
||||
message = message.join(" ");
|
||||
}
|
||||
else {
|
||||
message = String(message);
|
||||
}
|
||||
|
||||
if (typeof callerId == 'number') {
|
||||
i = callerId;
|
||||
|
||||
do {
|
||||
i--;
|
||||
|
||||
caller = caller.caller;
|
||||
|
||||
if (!caller) {
|
||||
break;
|
||||
}
|
||||
|
||||
if (!originalCaller) {
|
||||
originalCaller = caller.caller;
|
||||
}
|
||||
|
||||
if (i <= 0 && caller.displayName) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
while (caller !== originalCaller);
|
||||
|
||||
callerDisplayName = Ext.getDisplayName(caller);
|
||||
}
|
||||
else {
|
||||
caller = caller.caller;
|
||||
callerDisplayName = Ext.getDisplayName(callerId) + '#' + caller.$name;
|
||||
}
|
||||
|
||||
event = {
|
||||
time: Ext.Date.now(),
|
||||
priority: priorityValue,
|
||||
priorityName: priority,
|
||||
message: message,
|
||||
caller: caller,
|
||||
callerDisplayName: callerDisplayName
|
||||
};
|
||||
|
||||
for (i in writers) {
|
||||
if (writers.hasOwnProperty(i)) {
|
||||
writers[i].write(Ext.merge({}, event));
|
||||
}
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
}, function() {
|
||||
Ext.Object.each(this.priorities, function(priority) {
|
||||
this.override(priority, function(message, callerId) {
|
||||
if (!callerId) {
|
||||
callerId = 1;
|
||||
}
|
||||
|
||||
if (typeof callerId == 'number') {
|
||||
callerId += 1;
|
||||
}
|
||||
|
||||
this.log(message, priority, callerId);
|
||||
});
|
||||
}, this);
|
||||
});
|
||||
|
||||
})();
|
||||
//</feature>
|
||||
9
OfficeWeb/vendor/touch/src/log/filter/Filter.js
vendored
Normal file
9
OfficeWeb/vendor/touch/src/log/filter/Filter.js
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
//<feature logger>
|
||||
Ext.define('Ext.log.filter.Filter', {
|
||||
extend: 'Ext.log.Base',
|
||||
|
||||
accept: function(event) {
|
||||
return true;
|
||||
}
|
||||
});
|
||||
//</feature>
|
||||
13
OfficeWeb/vendor/touch/src/log/filter/Priority.js
vendored
Normal file
13
OfficeWeb/vendor/touch/src/log/filter/Priority.js
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
//<feature logger>
|
||||
Ext.define('Ext.log.filter.Priority', {
|
||||
extend: 'Ext.log.filter.Filter',
|
||||
|
||||
config: {
|
||||
minPriority: 1
|
||||
},
|
||||
|
||||
accept: function(event) {
|
||||
return event.priority >= this.getMinPriority();
|
||||
}
|
||||
});
|
||||
//</feature>
|
||||
17
OfficeWeb/vendor/touch/src/log/formatter/Default.js
vendored
Normal file
17
OfficeWeb/vendor/touch/src/log/formatter/Default.js
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
//<feature logger>
|
||||
Ext.define('Ext.log.formatter.Default', {
|
||||
extend: 'Ext.log.formatter.Formatter',
|
||||
|
||||
config: {
|
||||
messageFormat: "[{priorityName}][{callerDisplayName}] {message}"
|
||||
},
|
||||
|
||||
format: function(event) {
|
||||
var event = Ext.merge({}, event, {
|
||||
priorityName: event.priorityName.toUpperCase()
|
||||
});
|
||||
|
||||
return this.callParent([event]);
|
||||
}
|
||||
});
|
||||
//</feature>
|
||||
27
OfficeWeb/vendor/touch/src/log/formatter/Formatter.js
vendored
Normal file
27
OfficeWeb/vendor/touch/src/log/formatter/Formatter.js
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
//<feature logger>
|
||||
Ext.define('Ext.log.formatter.Formatter', {
|
||||
extend: 'Ext.log.Base',
|
||||
|
||||
config: {
|
||||
messageFormat: "{message}"
|
||||
},
|
||||
|
||||
format: function(event) {
|
||||
return this.substitute(this.getMessageFormat(), event);
|
||||
},
|
||||
|
||||
substitute: function(template, data) {
|
||||
var name, value;
|
||||
|
||||
for (name in data) {
|
||||
if (data.hasOwnProperty(name)) {
|
||||
value = data[name];
|
||||
|
||||
template = template.replace(new RegExp("\\{" + name + "\\}", "g"), value);
|
||||
}
|
||||
}
|
||||
|
||||
return template;
|
||||
}
|
||||
});
|
||||
//</feature>
|
||||
17
OfficeWeb/vendor/touch/src/log/formatter/Identity.js
vendored
Normal file
17
OfficeWeb/vendor/touch/src/log/formatter/Identity.js
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
//<feature logger>
|
||||
Ext.define('Ext.log.formatter.Identity', {
|
||||
extend: 'Ext.log.formatter.Default',
|
||||
|
||||
config: {
|
||||
messageFormat: "[{osIdentity}][{browserIdentity}][{timestamp}][{priorityName}][{callerDisplayName}] {message}"
|
||||
},
|
||||
|
||||
format: function(event) {
|
||||
event.timestamp = Ext.Date.toString();
|
||||
event.browserIdentity = Ext.browser.name + ' ' + Ext.browser.version;
|
||||
event.osIdentity = Ext.os.name + ' ' + Ext.os.version;
|
||||
|
||||
return this.callParent(arguments);
|
||||
}
|
||||
});
|
||||
//</feature>
|
||||
39
OfficeWeb/vendor/touch/src/log/writer/Console.js
vendored
Normal file
39
OfficeWeb/vendor/touch/src/log/writer/Console.js
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
//<feature logger>
|
||||
Ext.define('Ext.log.writer.Console', {
|
||||
|
||||
extend: 'Ext.log.writer.Writer',
|
||||
|
||||
config: {
|
||||
throwOnErrors: true,
|
||||
throwOnWarnings: false
|
||||
},
|
||||
|
||||
doWrite: function(event) {
|
||||
var message = event.message,
|
||||
priority = event.priorityName,
|
||||
consoleMethod;
|
||||
|
||||
if (priority === 'error' && this.getThrowOnErrors()) {
|
||||
throw new Error(message);
|
||||
}
|
||||
|
||||
if (typeof console !== 'undefined') {
|
||||
consoleMethod = priority;
|
||||
|
||||
if (consoleMethod === 'deprecate') {
|
||||
consoleMethod = 'warn';
|
||||
}
|
||||
|
||||
if (consoleMethod === 'warn' && this.getThrowOnWarnings()) {
|
||||
throw new Error(message);
|
||||
}
|
||||
|
||||
if (!(consoleMethod in console)) {
|
||||
consoleMethod = 'log';
|
||||
}
|
||||
|
||||
console[consoleMethod](message);
|
||||
}
|
||||
}
|
||||
});
|
||||
//</feature>
|
||||
12
OfficeWeb/vendor/touch/src/log/writer/DocumentTitle.js
vendored
Normal file
12
OfficeWeb/vendor/touch/src/log/writer/DocumentTitle.js
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
//<feature logger>
|
||||
Ext.define('Ext.log.writer.DocumentTitle', {
|
||||
|
||||
extend: 'Ext.log.writer.Writer',
|
||||
|
||||
doWrite: function(event) {
|
||||
var message = event.message;
|
||||
|
||||
document.title = message;
|
||||
}
|
||||
});
|
||||
//</feature>
|
||||
73
OfficeWeb/vendor/touch/src/log/writer/Remote.js
vendored
Normal file
73
OfficeWeb/vendor/touch/src/log/writer/Remote.js
vendored
Normal file
@@ -0,0 +1,73 @@
|
||||
//<feature logger>
|
||||
Ext.define('Ext.log.writer.Remote', {
|
||||
extend: 'Ext.log.writer.Writer',
|
||||
|
||||
requires: [
|
||||
'Ext.Ajax'
|
||||
],
|
||||
|
||||
config: {
|
||||
batchSendDelay: 100,
|
||||
onFailureRetryDelay: 500,
|
||||
url: ''
|
||||
},
|
||||
|
||||
isSending: false,
|
||||
|
||||
sendingTimer: null,
|
||||
|
||||
constructor: function() {
|
||||
this.queue = [];
|
||||
|
||||
this.send = Ext.Function.bind(this.send, this);
|
||||
|
||||
return this.callParent(arguments);
|
||||
},
|
||||
|
||||
doWrite: function(event) {
|
||||
var queue = this.queue;
|
||||
queue.push(event.message);
|
||||
|
||||
if (!this.isSending && this.sendingTimer === null) {
|
||||
this.sendingTimer = setTimeout(this.send, this.getBatchSendDelay());
|
||||
}
|
||||
},
|
||||
|
||||
send: function() {
|
||||
var queue = this.queue,
|
||||
messages = queue.slice();
|
||||
|
||||
queue.length = 0;
|
||||
|
||||
this.sendingTimer = null;
|
||||
|
||||
if (messages.length > 0) {
|
||||
this.doSend(messages);
|
||||
}
|
||||
},
|
||||
|
||||
doSend: function(messages) {
|
||||
var me = this;
|
||||
|
||||
me.isSending = true;
|
||||
|
||||
Ext.Ajax.request({
|
||||
url: me.getUrl(),
|
||||
method: 'POST',
|
||||
params: {
|
||||
messages: messages.join("\n")
|
||||
},
|
||||
success: function(){
|
||||
me.isSending = false;
|
||||
me.send();
|
||||
},
|
||||
failure: function() {
|
||||
setTimeout(function() {
|
||||
me.doSend(messages);
|
||||
}, me.getOnFailureRetryDelay());
|
||||
},
|
||||
scope: me
|
||||
});
|
||||
}
|
||||
});
|
||||
//</feature>
|
||||
57
OfficeWeb/vendor/touch/src/log/writer/Writer.js
vendored
Normal file
57
OfficeWeb/vendor/touch/src/log/writer/Writer.js
vendored
Normal file
@@ -0,0 +1,57 @@
|
||||
//<feature logger>
|
||||
Ext.define('Ext.log.writer.Writer', {
|
||||
extend: 'Ext.log.Base',
|
||||
|
||||
requires: ['Ext.log.formatter.Formatter'],
|
||||
|
||||
config: {
|
||||
formatter: null,
|
||||
filters: {}
|
||||
},
|
||||
|
||||
constructor: function() {
|
||||
this.activeFilters = [];
|
||||
|
||||
return this.callParent(arguments);
|
||||
},
|
||||
|
||||
updateFilters: function(filters) {
|
||||
var activeFilters = this.activeFilters,
|
||||
i, filter;
|
||||
|
||||
activeFilters.length = 0;
|
||||
|
||||
for (i in filters) {
|
||||
if (filters.hasOwnProperty(i)) {
|
||||
filter = filters[i];
|
||||
activeFilters.push(filter);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
write: function(event) {
|
||||
var filters = this.activeFilters,
|
||||
formatter = this.getFormatter(),
|
||||
i, ln, filter;
|
||||
|
||||
for (i = 0,ln = filters.length; i < ln; i++) {
|
||||
filter = filters[i];
|
||||
|
||||
if (!filters[i].accept(event)) {
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
if (formatter) {
|
||||
event.message = formatter.format(event);
|
||||
}
|
||||
|
||||
this.doWrite(event);
|
||||
|
||||
return this;
|
||||
},
|
||||
|
||||
// @private
|
||||
doWrite: Ext.emptyFn
|
||||
});
|
||||
//</feature>
|
||||
Reference in New Issue
Block a user