コード例 #1
0
        private void InitializeRegistrationInfoFromStorage()
        {
            this.registrations = new ConcurrentDictionary <string, StoredRegistrationEntry>();

            // Read channelUri
            this.channelUri = ReadContent(this.storageValues, KeyNameChannelUri);

            // Verify storage version
            var version = ReadContent(this.storageValues, KeyNameVersion);

            if (!string.Equals(version, StorageVersion, System.StringComparison.OrdinalIgnoreCase))
            {
                this.IsRefreshNeeded = true;
                return;
            }

            this.IsRefreshNeeded = false;

            // read registrations
            var regsStr = ReadContent(this.storageValues, KeyNameRegistrations);

            if (!string.IsNullOrEmpty(regsStr))
            {
                var entries = regsStr.Split(';');
                foreach (string entry in entries)
                {
                    var reg = StoredRegistrationEntry.CreateFromString(entry);
                    this.registrations.AddOrUpdate(reg.RegistrationName, reg, (key, oldValue) => reg);
                }
            }
        }
コード例 #2
0
        public void UpdateRegistrationByName(string registrationName, string registrationId, string registrationChannelUri)
        {
            StoredRegistrationEntry cacheReg = new StoredRegistrationEntry(registrationName, registrationId);

            this.registrations.AddOrUpdate(registrationName, cacheReg, (key, oldValue) => cacheReg);

            this.channelUri = registrationChannelUri;
            this.Flush();
        }
コード例 #3
0
        public void UpdateRegistrationByName(string registrationName, string registrationId, string registrationDeviceId)
        {
            StoredRegistrationEntry cacheReg = new StoredRegistrationEntry(registrationName, registrationId);

            lock (this.registrations)
            {
                this.registrations[registrationName] = cacheReg;
                this.pushHandle = registrationDeviceId;
                this.Flush();
            }
        }
コード例 #4
0
        public void UpdateRegistrationByName(string registrationName, string registrationId, string registrationDeviceId)
        {
            if (string.IsNullOrEmpty(registrationName))
            {
                registrationName = Registration.NativeRegistrationName;
            }

            StoredRegistrationEntry cacheReg = new StoredRegistrationEntry(registrationName, registrationId);

            lock (this.registrations)
            {
                this.registrations[registrationName] = cacheReg;
                this.pushHandle = registrationDeviceId;
                this.Flush();
            }
        }
コード例 #5
0
        public void UpdateRegistrationByName(string registrationName, string registrationId, string registrationChannelUri)
        {
            StoredRegistrationEntry cacheReg = new StoredRegistrationEntry(registrationName, registrationId);
            this.registrations.AddOrUpdate(registrationName, cacheReg, (key, oldValue) => cacheReg);

            this.channelUri = registrationChannelUri;
            this.Flush();
        }
コード例 #6
0
        public void UpdateRegistrationByName(string registrationName, string registrationId, string registrationDeviceId)
        {
            StoredRegistrationEntry cacheReg = new StoredRegistrationEntry(registrationName, registrationId);

            lock (this.registrations)
            {
                this.registrations[registrationName] = cacheReg;
                this.pushHandle = registrationDeviceId;
                this.Flush();
            }
        }
コード例 #7
0
        public void UpdateRegistrationByName(string registrationName, string registrationId, string registrationDeviceId)
        {
            if (string.IsNullOrEmpty(registrationName))
            {
                registrationName = Registration.NativeRegistrationName;
            }

            StoredRegistrationEntry cacheReg = new StoredRegistrationEntry(registrationName, registrationId);
            lock (this.registrations)
            {
                this.registrations[registrationName] = cacheReg;
                this.pushHandle = registrationDeviceId;
                this.Flush();
            }
        }