Ejemplo n.º 1
0
 public void SetUp()
 {
     _bucket = new StorageBucket(
         new StorageService_Tests.SuccessStorageWorker(),
         "TestKey",
         "TestTags",
         1022);
 }
Ejemplo n.º 2
0
        /// <inheritdoc cref="IStorageService"/>
        public IAsyncToken <StorageService> Refresh()
        {
            if (null != _refreshToken)
            {
                return(_refreshToken.Token());
            }

            // keep local reference
            var token = _refreshToken = new AsyncToken <StorageService>();

            _worker
            .GetAll()
            .OnSuccess(models =>
            {
                for (int i = 0, len = models.Length; i < len; i++)
                {
                    var model = models[i];

                    var bucket = Get(model.key);
                    if (null == bucket)
                    {
                        bucket = new StorageBucket(
                            null,
                            model.key,
                            model.tags,
                            model.version);
                        _buckets.Add(bucket);
                    }

                    bucket.VersionUpdate(model.version);
                }

                token.Succeed(this);
            })
            .OnFailure(exception =>
            {
                // null out class reference first
                _refreshToken = null;

                token.Fail(exception);
            });

            return(token);
        }
Ejemplo n.º 3
0
        /// <inheritdoc cref="IStorageService"/>
        public IAsyncToken <StorageBucket> Create <T>(T value)
        {
            var token = new AsyncToken <StorageBucket>();

            _worker
            .Create(value)
            .OnSuccess(model =>
            {
                var bucket = new StorageBucket(
                    _worker,
                    model.key,
                    model.tags,
                    model.version);
                _buckets.Add(bucket);

                token.Succeed(bucket);
            })
            .OnFailure(token.Fail);

            return(token);
        }