public void If_optimized_no_more_than_maximum_count_items_are_returned() { IEnumerationRequestHandler handler = MockRepository.GenerateMock <IEnumerationRequestHandler>(); handler.Expect(x => x.Enumerate(null)).IgnoreArguments().Return(new[] { new EndpointAddress(ResourceUri.ToString()), new EndpointAddress(ResourceUri.ToString()), new EndpointAddress(ResourceUri.ToString()) }); EnumerationServer server = new EnumerationServer(); server.Bind(ResourceUri, FilterMap.DefaultDialect, typeof(void), handler); OperationContextProxy.Current.AddHeader(new ResourceUriHeader(ResourceUri.ToString())); var response = server.Enumerate(new EnumerateRequest { EnumerationMode = EnumerationMode.EnumerateEPR, OptimizeEnumeration = OptimizeEnumeration.True, MaxElements = new MaxElements(2) }); Assert.AreEqual(2, response.Items.Items.Count()); }
public EnumerationServer Bind(string dialect, Type filterType, IEnumerationRequestHandler handler) { _filterMap.Bind(dialect, filterType); _handlerMap[dialect] = handler; return(this); }
public EnumerationServer Bind(Uri resourceUri, string dialect, Type filterType, IEnumerationRequestHandler handler) { _filterMap.Bind(dialect, filterType); _handlerMap[new HandlerMapKey(resourceUri.ToString(), dialect)] = handler; return this; }
public EnumerationServer Bind(string dialect, Type filterType, IEnumerationRequestHandler handler) { _filterMap.Bind(dialect, filterType); _handlerMap[dialect] = handler; return this; }
public void BindEnumeration(Uri resoureceUri, string dialect, Type filterType, IEnumerationRequestHandler enumerationRequestHandler) { _filterMap.Bind(dialect, filterType); _pullRoutingTable[resoureceUri.ToString()] = _enumerationServer.Pull; _enumerationServer.Bind(resoureceUri, dialect, filterType, enumerationRequestHandler); }
public EnumerationServer Bind(Uri resourceUri, string dialect, Type filterType, IEnumerationRequestHandler handler) { _filterMap.Bind(dialect, filterType); _handlerMap[new HandlerMapKey(resourceUri.ToString(), dialect)] = handler; return(this); }