示例#1
0
        /// <summary>
        /// Register an engine with this task-broker
        /// </summary>
        /// <param name="engineId">engine id</param>
        public void RegisterEngineId(string engineId)
        {
            _log.DebugFormat("Received request to register engine {0}", engineId);
            try
            {
                // first create a grid-engine client
                IComputeEngine engine = new GridEngineClient();
                (engine as GridEngineClient).Endpoint.Address = new EndpointAddress(String.Format("{0}/{1}", CLIENT_BASE_ADDRESS, engineId));

                // *** critical section ***
                lock (_enginesMutex)
                {
                    if (!_engineCollection.ContainsKey(engineId))
                    {
                        _engineCollection[engineId] = engine;
                    }
                }
                _log.DebugFormat("Registered engine {0}", engineId);
            }
            catch (Exception e)
            {
                _log.ErrorFormat("Error registering engine {0}: {1}\n{2}", engineId, e.Message, e.StackTrace);
            }
        }
示例#2
0
        /// <summary>
        /// Register an engine with this task-broker
        /// </summary>
        /// <param name="engineId">engine id</param>
        public void RegisterEngineId(string engineId)
        {
            _log.DebugFormat("Received request to register engine {0}", engineId);
            try
            {
                // first create a grid-engine client
                IComputeEngine engine = new GridEngineClient();
                (engine as GridEngineClient).Endpoint.Address = new EndpointAddress(String.Format("{0}/{1}", CLIENT_BASE_ADDRESS, engineId));

                // *** critical section ***
                lock (_enginesMutex)
                {
                    if (!_engineCollection.ContainsKey(engineId))
                    {
                        _engineCollection[engineId] = engine;
                    }
                }
                _log.DebugFormat("Registered engine {0}", engineId);
            }
            catch (Exception e)
            {
                _log.ErrorFormat("Error registering engine {0}: {1}\n{2}", engineId, e.Message, e.StackTrace);
            }
        }