public void Register() { lock (base.SyncRoot) { if (!this._isRegistered) { IStreamFilenameGenerator generator = ObjectFactory.CreateInstance(this._appConfig.StreamFilenameGenerator.Type) as IStreamFilenameGenerator; base.AddService(typeof(IStreamFilenameGenerator), generator, false); generator.Start(this._appConfig.StreamFilenameGenerator); ISharedObjectService service = ObjectFactory.CreateInstance(this._appConfig.SharedObjectServiceConfiguration.Type) as ISharedObjectService; base.AddService(typeof(ISharedObjectService), service, false); service.Start(this._appConfig.SharedObjectServiceConfiguration); IProviderService service2 = ObjectFactory.CreateInstance(this._appConfig.ProviderServiceConfiguration.Type) as IProviderService; base.AddService(typeof(IProviderService), service2, false); service2.Start(this._appConfig.ProviderServiceConfiguration); IConsumerService service3 = ObjectFactory.CreateInstance(this._appConfig.ConsumerServiceConfiguration.Type) as IConsumerService; base.AddService(typeof(IConsumerService), service3, false); service3.Start(this._appConfig.ConsumerServiceConfiguration); IStreamService service4 = ObjectFactory.CreateInstance(this._appConfig.StreamService.Type) as IStreamService; base.AddService(typeof(IStreamService), service4, false); service4.Start(this._appConfig.StreamService); if (this._appConfig.SharedObjectSecurityService.Type != null) { ISharedObjectSecurityService service5 = ObjectFactory.CreateInstance(this._appConfig.SharedObjectSecurityService.Type) as ISharedObjectSecurityService; base.AddService(typeof(ISharedObjectSecurityService), service5, false); service5.Start(this._appConfig.SharedObjectSecurityService); } base.Init(); base._keepOnDisconnect = true; this._isRegistered = true; } } }