コード例 #1
0
 public ExchangeConferenceRoomService(IMeetingRepository meetingRepository,
                                      ISecurityRepository securityRepository,
                                      IBroadcastService broadcastService,
                                      IDateTimeService dateTimeService,
                                      IMeetingCacheService meetingCacheService,
                                      IChangeNotificationService changeNotificationService,
                                      IExchangeServiceManager exchangeServiceManager,
                                      ISimpleTimedCache simpleTimedCache,
                                      IInstantMessagingService instantMessagingService,
                                      ISmsMessagingService smsMessagingService,
                                      ISmsAddressLookupService smsAddressLookupService,
                                      ISignatureService signatureService,
                                      IRoomRepository roomRepository)
 {
     _meetingRepository         = meetingRepository;
     _securityRepository        = securityRepository;
     _broadcastService          = broadcastService;
     _dateTimeService           = dateTimeService;
     _meetingCacheService       = meetingCacheService;
     _changeNotificationService = changeNotificationService;
     _exchangeServiceManager    = exchangeServiceManager;
     _simpleTimedCache          = simpleTimedCache;
     _instantMessagingService   = instantMessagingService;
     _smsMessagingService       = smsMessagingService;
     _smsAddressLookupService   = smsAddressLookupService;
     _signatureService          = signatureService;
     _roomRepository            = roomRepository;
     _ignoreFree             = bool.Parse(ConfigurationManager.AppSettings["ignoreFree"] ?? "false");
     _useChangeNotification  = bool.Parse(ConfigurationManager.AppSettings["useChangeNotification"] ?? "true");
     _impersonateForAllCalls = bool.Parse(ConfigurationManager.AppSettings["impersonateForAllCalls"] ?? "true");
     _emailDomains           = (ConfigurationManager.AppSettings["emailDomains"] ?? "")
                               .Split(';')
                               .Select(_ => _.StartsWith("@") ? _.ToLowerInvariant() : "@" + _.ToLowerInvariant())
                               .ToArray();
 }
コード例 #2
0
            public Watcher(IIOCContainer container, string organizationId, IBroadcastService broadcastService, IMeetingCacheService meetingCacheService)
            {
                _container           = container;
                _organizationId      = organizationId;
                _broadcastService    = broadcastService;
                _meetingCacheService = meetingCacheService;

                Task.Run(async() => await DoWork());  // don't wait for this to complete
            }
コード例 #3
0
            public Watcher(Func<ExchangeService> exchangeServiceBuilder, IBroadcastService broadcastService, IMeetingCacheService meetingCacheService, string roomAddress)
            {
                IsActive = false;

                _exchangeServiceBuilder = exchangeServiceBuilder;
                _broadcastService = broadcastService;
                _meetingCacheService = meetingCacheService;
                _roomAddress = roomAddress;
                _startConnectionTimer.Stop();
                _startConnectionTimer.Elapsed += StartConnectionTimerOnElapsed;
                Task.Run(() => UpdateConnection()); // don't wait for this to complete
            }
コード例 #4
0
            public Watcher(Func <ExchangeService> exchangeServiceBuilder, IBroadcastService broadcastService, IMeetingCacheService meetingCacheService, string roomAddress)
            {
                IsActive = false;

                _exchangeServiceBuilder = exchangeServiceBuilder;
                _broadcastService       = broadcastService;
                _meetingCacheService    = meetingCacheService;
                _roomAddress            = roomAddress;
                _startConnectionTimer.Stop();
                _startConnectionTimer.Elapsed += StartConnectionTimerOnElapsed;
                Task.Run(() => UpdateConnection()); // don't wait for this to complete
            }
コード例 #5
0
 public ExchangeConferenceRoomService(ExchangeService exchangeService, IMeetingRepository meetingRepository, ISecurityRepository securityRepository, IBroadcastService broadcastService, IDateTimeService dateTimeService, IMeetingCacheService meetingCacheService, IChangeNotificationService changeNotificationService, IConcurrencyLimiter concurrencyLimiter)
 {
     _exchangeService = exchangeService;
     _meetingRepository = meetingRepository;
     _securityRepository = securityRepository;
     _broadcastService = broadcastService;
     _dateTimeService = dateTimeService;
     _meetingCacheService = meetingCacheService;
     _changeNotificationService = changeNotificationService;
     _concurrencyLimiter = concurrencyLimiter;
     _ignoreFree = bool.Parse(ConfigurationManager.AppSettings["ignoreFree"] ?? "false");
     _useChangeNotification = bool.Parse(ConfigurationManager.AppSettings["useChangeNotification"] ?? "true");
 }
コード例 #6
0
            public Watcher(IExchangeServiceManager exchangeServiceManager, IBroadcastService broadcastService, IMeetingCacheService meetingCacheService, IRoom room, OrganizationEntity organization)
            {
                IsActive = false;

                _exchangeServiceManager = exchangeServiceManager;
                _broadcastService       = broadcastService;
                _meetingCacheService    = meetingCacheService;
                _room         = room;
                _organization = organization;
                _startConnectionTimer.Stop();
                _startConnectionTimer.Elapsed += StartConnectionTimerOnElapsed;
                Task.Run(() => UpdateConnection()); // don't wait for this to complete
            }
コード例 #7
0
 public ExchangeConferenceRoomService(ExchangeService exchangeService, IMeetingRepository meetingRepository, ISecurityRepository securityRepository, IBroadcastService broadcastService, IDateTimeService dateTimeService, IMeetingCacheService meetingCacheService, IChangeNotificationService changeNotificationService, IConcurrencyLimiter concurrencyLimiter)
 {
     _exchangeService           = exchangeService;
     _meetingRepository         = meetingRepository;
     _securityRepository        = securityRepository;
     _broadcastService          = broadcastService;
     _dateTimeService           = dateTimeService;
     _meetingCacheService       = meetingCacheService;
     _changeNotificationService = changeNotificationService;
     _concurrencyLimiter        = concurrencyLimiter;
     _ignoreFree            = bool.Parse(ConfigurationManager.AppSettings["ignoreFree"] ?? "false");
     _useChangeNotification = bool.Parse(ConfigurationManager.AppSettings["useChangeNotification"] ?? "true");
 }
コード例 #8
0
 public ExchangeRestChangeNotificationService(IBroadcastService broadcastService, IMeetingCacheService meetingCacheService, IIOCContainer container)
 {
     if (broadcastService == null)
     {
         throw new ArgumentNullException(nameof(broadcastService));
     }
     if (meetingCacheService == null)
     {
         throw new ArgumentNullException(nameof(meetingCacheService));
     }
     if (container == null)
     {
         throw new ArgumentNullException(nameof(container));
     }
     _broadcastService    = broadcastService;
     _meetingCacheService = meetingCacheService;
     _container           = container;
 }
コード例 #9
0
 public ExchangeRestConferenceRoomService(ExchangeRestWrapper exchange, GraphRestWrapper graph, IContextService contextService, IDateTimeService dateTimeService, IBuildingRepository buildingRepository, IFloorRepository floorRepository, IMeetingRepository meetingRepository, IBroadcastService broadcastService, ISignatureService signatureService, ISmsAddressLookupService smsAddressLookupService, ISmsMessagingService smsMessagingService, IRoomMetadataRepository roomRepository, IMeetingCacheService meetingCacheService, IExchangeRestChangeNotificationService exchangeRestChangeNotificationService, ISimpleTimedCache simpleTimedCache, MeetingCacheReloaderFactory meetingCacheReloaderFactory)
 {
     _exchange                = exchange;
     _graph                   = graph;
     _contextService          = contextService;
     _dateTimeService         = dateTimeService;
     _buildingRepository      = buildingRepository;
     _floorRepository         = floorRepository;
     _meetingRepository       = meetingRepository;
     _broadcastService        = broadcastService;
     _signatureService        = signatureService;
     _smsAddressLookupService = smsAddressLookupService;
     _smsMessagingService     = smsMessagingService;
     _roomRepository          = roomRepository;
     _meetingCacheService     = meetingCacheService;
     _exchangeRestChangeNotificationService = exchangeRestChangeNotificationService;
     _simpleTimedCache            = simpleTimedCache;
     _meetingCacheReloaderFactory = meetingCacheReloaderFactory;
 }
コード例 #10
0
 public ExchangeConferenceRoomService(IMeetingRepository meetingRepository,
                                      IBroadcastService broadcastService,
                                      IDateTimeService dateTimeService,
                                      IMeetingCacheService meetingCacheService,
                                      IChangeNotificationService changeNotificationService,
                                      IExchangeServiceManager exchangeServiceManager,
                                      ISimpleTimedCache simpleTimedCache,
                                      ISmsMessagingService smsMessagingService,
                                      ISmsAddressLookupService smsAddressLookupService,
                                      ISignatureService signatureService,
                                      IRoomMetadataRepository roomRepository,
                                      IBuildingRepository buildingRepository,
                                      IFloorRepository floorRepository,
                                      IContextService contextService,
                                      IConferenceRoomDiscoveryService exchangeConferenceRoomDiscoveryService,
                                      ExchangeConferenceRoomServiceConfiguration config)
 {
     if (config == null)
     {
         throw new ArgumentNullException(nameof(config));
     }
     _meetingRepository         = meetingRepository;
     _broadcastService          = broadcastService;
     _dateTimeService           = dateTimeService;
     _meetingCacheService       = meetingCacheService;
     _changeNotificationService = changeNotificationService;
     _exchangeServiceManager    = exchangeServiceManager;
     _simpleTimedCache          = simpleTimedCache;
     _smsMessagingService       = smsMessagingService;
     _smsAddressLookupService   = smsAddressLookupService;
     _signatureService          = signatureService;
     _roomRepository            = roomRepository;
     _buildingRepository        = buildingRepository;
     _floorRepository           = floorRepository;
     _contextService            = contextService;
     _exchangeConferenceRoomDiscoveryService = exchangeConferenceRoomDiscoveryService;
     _ignoreFree             = config.IgnoreFree;
     _useChangeNotification  = config.UseChangeNotification;
     _impersonateForAllCalls = config.ImpersonateForAllCalls;
     _emailDomains           = config.EmailDomains;
 }
コード例 #11
0
 public ExchangePushChangeNotificationService(IBroadcastService broadcastService, IMeetingCacheService meetingCacheService, IIOCContainer container, string connectionString, string topic, string subscription)
 {
     if (broadcastService == null)
     {
         throw new ArgumentNullException(nameof(broadcastService));
     }
     if (meetingCacheService == null)
     {
         throw new ArgumentNullException(nameof(meetingCacheService));
     }
     if (container == null)
     {
         throw new ArgumentNullException(nameof(container));
     }
     _broadcastService    = broadcastService;
     _meetingCacheService = meetingCacheService;
     _container           = container;
     _connectionString    = connectionString;
     _topic        = topic;
     _subscription = subscription;
 }
コード例 #12
0
 public ChangeNotificationService(Func<ExchangeService> exchangeServiceBuilder, IBroadcastService broadcastService, IMeetingCacheService meetingCacheService)
 {
     _exchangeServiceBuilder = exchangeServiceBuilder;
     _broadcastService = broadcastService;
     _meetingCacheService = meetingCacheService;
 }
コード例 #13
0
 public ExchangeEWSChangeNotificationService(IBroadcastService broadcastService, IMeetingCacheService meetingCacheService)
 {
     _broadcastService    = broadcastService;
     _meetingCacheService = meetingCacheService;
 }
コード例 #14
0
 public ChangeNotificationService(Func <ExchangeService> exchangeServiceBuilder, IBroadcastService broadcastService, IMeetingCacheService meetingCacheService)
 {
     _exchangeServiceBuilder = exchangeServiceBuilder;
     _broadcastService       = broadcastService;
     _meetingCacheService    = meetingCacheService;
 }