code: public synchronized void add(LogSink logSink)
      	throws Exception	
      {
          logSink.setLogImpl(this);
          if (!logSink.isStarted())
              logSink.start();
          
          if (_sinks==null)
          {
              _sinks=new LogSink[1];
              _sinks[0]=logSink;
          }
          else
          {
              boolean slotFree = false;
              for( int i=_sinks.length; i-->0; )
              {
                  if( _sinks[i] == null )
                  {
                      slotFree = true;
                      _sinks[i] = logSink;
                      break;
                  }
              }
  
              if( !slotFree )
              {
                  LogSink[] ns = new LogSink[_sinks.length+1];
                  for (int i=_sinks.length;i-->0;)
                      ns[i]=_sinks[i];
                  ns[_sinks.length]=logSink;
                  _sinks=ns;
              }
          }
          _initialized = true;
  
          info("added "+logSink);
      }
docs: Add a Log Sink.
  @param logSink