public void Log (object source, robotlegs.bender.framework.impl.LogLevel level, DateTime timestamp, object message, params object[] messageParameters)
		{
			if (level <= LogLevel.WARN)
			{
				throw new VigilantException(string.Format(message.ToString(), messageParameters));
			}
		}
		/*============================================================================*/
		/* Public Functions                                                           */
		/*============================================================================*/
		
		public void Log (object source, robotlegs.bender.framework.impl.LogLevel level, DateTime timestamp, object message, params object[] messageParameters)
		{
			UnityEngine.Debug.Log(string.Format(timestamp.ToLongTimeString()
			                      + " " + level.ToString()
			                      + " " + _context
			                      + " " + source
			                      + " " + message, messageParameters));
		}
		/*============================================================================*/
		/* Public Functions                                                           */
		/*============================================================================*/

		public void Log (object source, robotlegs.bender.framework.impl.LogLevel level, DateTime timestamp, object message, params object[] messageParameters)
		{
			Console.WriteLine(timestamp.ToLongTimeString()
			      + " " + level.ToString()
			      + " " + _context
			      + " " + source
			      + " " + message, messageParameters);
		}
		/*============================================================================*/
		/* Public Functions                                                           */
		/*============================================================================*/

		public void Log (object source, robotlegs.bender.framework.impl.LogLevel level, DateTime timestamp, object message, params object[] messageParameters)
		{
			_callback(new LogParams (source, level, timestamp, message, messageParameters));
		}