/// <summary>
        /// cloneTask override method for PooledTaskBroker.
        /// </summary>
        /// <remarks></remarks>
        protected override RTask cloneTask(RTask genesis)
        {
            PooledTask source = (PooledTask)genesis;
            PooledTask clone  = null;

            if (source.code != "")
            {
                clone = new PooledTask(source.code,
                                       source.options);
            }
            else
            {
                clone = new PooledTask(source.filename,
                                       source.directory,
                                       source.author,
                                       source.version,
                                       source.options);
            }

            if (source.external != "")
            {
                clone.external = source.external;
            }
            clone.setToken(source.getToken());
            return(clone);
        }
 /// <summary>
 /// Constructor for specifying a Pooled Instance of RBrokerWorker
 /// </summary>
 /// <param name="task">DiscreteTask reference</param>
 /// <param name="executorTaskRef">Reserved for future use</param>
 /// <param name="isPriorityTask">Boolean indicating this is a high priority task</param>
 /// <param name="resourceToken">integer referencing the token from the reosurce pool</param>
 /// <param name="rBroker">RBroker reference</param>
 /// <remarks></remarks>
 public PooledTaskWorker(PooledTask task,
                         long executorTaskRef,
                         Boolean isPriorityTask,
                         RProject resourceToken,
                         RBroker rBroker)
 {
     m_task = task;
     m_executorTaskRef = executorTaskRef;
     m_isPriorityTask = isPriorityTask;
     m_rProject = resourceToken;
     m_rBroker = (PooledTaskBroker) rBroker;
 }
 /// <summary>
 /// Constructor for specifying a Pooled Instance of RBrokerWorker
 /// </summary>
 /// <param name="task">DiscreteTask reference</param>
 /// <param name="executorTaskRef">Reserved for future use</param>
 /// <param name="isPriorityTask">Boolean indicating this is a high priority task</param>
 /// <param name="resourceToken">integer referencing the token from the reosurce pool</param>
 /// <param name="rBroker">RBroker reference</param>
 /// <remarks></remarks>
 public PooledTaskWorker(PooledTask task,
                         long executorTaskRef,
                         Boolean isPriorityTask,
                         RProject resourceToken,
                         RBroker rBroker)
 {
     m_task            = task;
     m_executorTaskRef = executorTaskRef;
     m_isPriorityTask  = isPriorityTask;
     m_rProject        = resourceToken;
     m_rBroker         = (PooledTaskBroker)rBroker;
 }
        /// <summary>
        /// cloneTask override method for PooledTaskBroker.
        /// </summary>
        /// <remarks></remarks>
        protected override RTask cloneTask(RTask genesis)
        {
            PooledTask source  = (PooledTask) genesis;
            PooledTask clone = null;
            if(source.code != "")
            {
                clone = new PooledTask(source.code,
                                       source.options);
            }
            else
            {
                clone = new PooledTask(source.filename,
                                       source.directory,
                                       source.author,
                                       source.version,
                                       source.options);
            }

            if(source.external != "")
            {
                clone.external = source.external;
            }
            clone.setToken(source.getToken());
            return clone;
        }