Esempio n. 1
0
        public void Enqueue(Error error)
        {
            Manifest manifest = Manifest.FromError(error);

            manifest.LastAttempt = DateTime.MinValue;
            _data.Add(Tuple.Create(manifest, error));
            while (_data.Count > MaxItems)
            {
                _data.RemoveAt(0);
            }
        }
Esempio n. 2
0
        public void Enqueue(Error error)
        {
            if (error == null)
            {
                throw new ArgumentNullException("error");
            }

            try {
                string   manifestPath = GetManifestPath(error.Id);
                string   errorPath    = GetErrorPath(error.Id);
                Manifest manifest     = Manifest.FromError(error);
                ModelSerializer.Current.SerializeToFile(manifestPath, manifest);
                ModelSerializer.Current.SerializeToFile(errorPath, error);
            } catch (Exception ex) {
                LogAccessor.Log.FormattedError(typeof(FolderQueueStore), ex, "Problem enqueuing error '{0}' to folder '{1}'", error.Id, _queuePath);
                throw;
            }
        }
        public void Enqueue(Error error)
        {
            if (error == null)
            {
                throw new ArgumentNullException("error");
            }

            try {
                using (IsolatedStorageDirectory dir = GetStorageDirectory()) {
                    string   manifestFilename = GetManifestFilename(error.Id);
                    string   errorFilename    = GetErrorFilename(error.Id);
                    Manifest manifest         = Manifest.FromError(error);
                    dir.WriteFile(manifestFilename, manifest);
                    dir.WriteFile(errorFilename, error);
                }
            } catch (Exception ex) {
                LogAccessor.Log.FormattedError(typeof(FolderQueueStore), ex, "Problem enqueuing error '{0}' to isolated storage", error.Id);
                throw;
            }
        }