예제 #1
0
 private void HandleResponse(GetDocumentsResult loadResult)
 {
     _loadOperation.SetResult(loadResult);
     if (RequiresRetry == false)
     {
         Result = _loadOperation.GetDocuments <T>();
     }
 }
예제 #2
0
 public void SetResult(GetDocumentsResult result)
 {
     foreach (BlittableJsonReaderObject document in result.Results)
     {
         var newDocumentInfo = DocumentInfo.GetNewDocumentInfo(document);
         _session.DocumentsById.Add(newDocumentInfo);
         _returnedIds.Add(newDocumentInfo.Id);
     }
 }
예제 #3
0
        public void Changes()
        {
            var store = new DocumentStore().Initialize();

            #region events_1
            store.OnBeforeStore         += (s, e) => { };
            store.OnAfterSaveChanges    += (s, e) => { };
            store.OnBeforeDelete        += (s, e) => { };
            store.OnBeforeQueryExecuted += (s, e) => { };
            #endregion

            #region urls_1
            new DocumentStore
            {
                Urls = new []
                {
                    "http://ravendb-1:8080",
                    "http://ravendb-2:8080",
                    "http://ravendb-3:8080"
                }
            }.Initialize();
            #endregion

            #region request_executor_1
            RequestExecutor requestExecutor = store.GetRequestExecutor();

            using (requestExecutor.ContextPool.AllocateOperationContext(out JsonOperationContext context))
            {
                var command = new GetDocumentsCommand(start: 0, pageSize: 10);
                requestExecutor.Execute(command, context);

                GetDocumentsResult result = command.Result;
            }
            #endregion

            #region request_executor_2
            int numberOfCachedItems = requestExecutor.Cache.NumberOfItems;

            requestExecutor.Cache.Clear();
            #endregion

            #region request_executor_3
            var numberOfSentRequests = requestExecutor.NumberOfServerRequests;
            #endregion

            #region request_executor_4
            requestExecutor.DefaultTimeout = TimeSpan.FromSeconds(180);
            #endregion

            #region request_executor_5
            using (store.SetRequestsTimeout(TimeSpan.FromMilliseconds(180)))
            {
            }
            #endregion
        }
예제 #4
0
        public void SetResult(GetDocumentsResult result)
        {
            if (_session.NoTracking)
            {
                _currentLoadResults = result;
                return;
            }

            foreach (var document in GetDocumentsFromResult(result))
            {
                _session.DocumentsById.Add(document);
                _returnedIds.Add(document.Id);
            }
        }
예제 #5
0
 private void HandleResponse(GetDocumentsResult loadResult)
 {
     if (_alreadyInSession.Count != 0)
     {
         // push this to the session
         new LoadOperation(_session)
         .ByIds(_alreadyInSession)
         .GetDocuments <T>();
     }
     _loadOperation.SetResult(loadResult);
     if (RequiresRetry == false)
     {
         Result = _loadOperation.GetDocuments <T>();
     }
 }
예제 #6
0
        public void SetResult(GetDocumentsResult result)
        {
            if (result == null)
            {
                return;
            }

            _session.RegisterIncludes(result.Includes);

            foreach (BlittableJsonReaderObject document in result.Results)
            {
                if (document == null)
                {
                    continue;
                }

                var newDocumentInfo = DocumentInfo.GetNewDocumentInfo(document);
                _session.DocumentsById.Add(newDocumentInfo);
            }

            _session.RegisterMissingIncludes(result.Results, result.Includes, _includes);
        }