Esempio n. 1
0
        protected void UnhookServiceHostEventHandlers(SupremacyServiceHost serviceHost)
        {
            if (serviceHost == null)
            {
                throw new ArgumentNullException("serviceHost");
            }

            CheckDisposed();

            serviceHost.ServiceOpened  -= OnServiceOpened;
            serviceHost.ServiceFaulted -= OnServiceFaulted;
            serviceHost.ServiceClosed  -= OnServiceClosed;
        }
Esempio n. 2
0
        protected void CreateServiceHost()
        {
            CheckDisposed();

            lock (_serviceLock)
            {
                if (_isServiceLoaded)
                {
                    return;
                }
                try
                {
                    var serviceHost = new SupremacyServiceHost();
                    HookServiceHostEventHandlers(serviceHost);
                    Interlocked.CompareExchange(ref _serviceHost, serviceHost, null);
                    _isServiceLoaded = true;
                }
                catch (Exception e)
                {
                    GameLog.Server.General.ErrorFormat("Exception occurred while creating WCF service host: {0}", e.Message);
                    throw new SupremacyException("Failed to create WCF service host.", e);
                }
            }
        }