226,227c226,236
<  * Implement to get Kaltura Client logs
<  * 
---
>  * Generic interface to get Kaltura Client logs, compatible with log4j.
>  * You may extend this class and implement the log() method, or use the
>  * nice http://log4javascript.org instead.
>  */
> function KalturaEmptyLogger()
> {
> }
> 
> /**
>  * You may not use the log() method directily, please use trace(), debug(),
>  * info(), warn(), error(), or fatal() instead.
229c238,249
< function IKalturaLogger() 
---
> KalturaEmptyLogger.prototype.log   = function(type, msg) { };
> KalturaEmptyLogger.prototype.trace = function(msg) { this.log("TRACE", msg) };
> KalturaEmptyLogger.prototype.debug = function(msg) { this.log("DEBUG", msg) };
> KalturaEmptyLogger.prototype.info  = function(msg) { this.log("INFO" , msg) };
> KalturaEmptyLogger.prototype.warn  = function(msg) { this.log("WARN" , msg) };
> KalturaEmptyLogger.prototype.error = function(msg) { this.log("ERROR", msg) };
> KalturaEmptyLogger.prototype.fatal = function(msg) { this.log("FATAL", msg) };
> 
> /**
>  * Kaltura Client log backward compatibility prototype and example
>  */
> function IKalturaLogger()
232,234c252,258
< IKalturaLogger.prototype.log = function(msg){
< 	if (console && console.log){
< 		console.log(msg);
---
> 
> IKalturaLogger.prototype = new KalturaEmptyLogger();
> 
> IKalturaLogger.prototype.log = function(type, msg)
> {
> 	if (console && console.log) {
> 		console.log(type+": "+msg);
253,256c277
<     var logger = this.config.getLogger();
< 	if (logger) {
< 		this.shouldLog = true;	
< 	}
---
>     this.logger = this.config.getLogger();
280c301
< KalturaClientBase.prototype.shouldLog = false;
---
> KalturaClientBase.prototype.logger = false;
314c335
< 	this.log("service url: [" + this.config.serviceUrl + "]");
---
> 	this.logger.debug("service url: [" + this.config.serviceUrl + "]");
374a396
>   this.logger.debug("Requesting: "+url);
410,413c432
< 	logger = this.config.getLogger();
< 	if (logger instanceof IKalturaLogger){
< 		this.shouldLog = true;	
< 	}
---
> 	this.logger = this.config.getLogger();
461,469d479
<  * @param string msg	client logging utility. 
<  */
< KalturaClientBase.prototype.log = function(msg)
< {
< 	if (this.shouldLog)
< 		this.config.getLogger().log(msg);
< };
< 
< /**
506,511c516,521
< KalturaConfiguration.prototype.logger		= null;
< KalturaConfiguration.prototype.serviceUrl	= "http://www.kaltura.com";
< KalturaConfiguration.prototype.serviceBase 	= "/api_v3/index.php?service=";
< KalturaConfiguration.prototype.partnerId	= null;
< KalturaConfiguration.prototype.format		= KalturaClientBase.prototype.KALTURA_SERVICE_FORMAT_JSONP;
< KalturaConfiguration.prototype.clientTag	= "js";
---
> KalturaConfiguration.prototype.logger      = null;
> KalturaConfiguration.prototype.serviceUrl  = "http://www.kaltura.com";
> KalturaConfiguration.prototype.serviceBase = "/api_v3/index.php?service=";
> KalturaConfiguration.prototype.partnerId   = null;
> KalturaConfiguration.prototype.format      = KalturaClientBase.prototype.KALTURA_SERVICE_FORMAT_JSONP;
> KalturaConfiguration.prototype.clientTag   = "js";
515c525
<  * @param IKalturaLogger log
---
>  * @param log4j compatible instance
524c534
<  * @return IKalturaLogger
---
>  * @return log4j compatible instance
528c538,541
< 	return this.logger;
---
>     if(this.logger)
>         return this.logger;
>     else
>         return new KalturaEmptyLogger();
