comparison UnitTestsSources/RestApiTests.cpp @ 978:ce3106e5843f

refactoring
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 30 Jun 2014 16:04:58 +0200
parents c550e99c452b
children cd20e2568fc2
comparison
equal deleted inserted replaced
975:c550e99c452b 978:ce3106e5843f
210 Toolbox::SplitUriComponents(p, uri); 210 Toolbox::SplitUriComponents(p, uri);
211 return hierarchy.GetDirectory(target, p); 211 return hierarchy.GetDirectory(target, p);
212 } 212 }
213 213
214 214
215
216 namespace
217 {
218 class MyVisitor : public RestApiHierarchy::IVisitor
219 {
220 public:
221 virtual bool Visit(const RestApiHierarchy::Resource& resource,
222 const UriComponents& uri,
223 const HttpHandler::Arguments& components,
224 const UriComponents& trailing)
225 {
226 return resource.Handle(*reinterpret_cast<RestApiGetCall*>(NULL));
227 }
228 };
229 }
230
231
215 static bool HandleGet(RestApiHierarchy& hierarchy, 232 static bool HandleGet(RestApiHierarchy& hierarchy,
216 const std::string& uri) 233 const std::string& uri)
217 { 234 {
218 UriComponents p; 235 UriComponents p;
219 Toolbox::SplitUriComponents(p, uri); 236 Toolbox::SplitUriComponents(p, uri);
220 return hierarchy.Handle(*reinterpret_cast<RestApiGetCall*>(NULL), p); 237 MyVisitor visitor;
238 return hierarchy.LookupResource(p, visitor);
221 } 239 }
222 240
223 241
224 TEST(RestApi, RestApiHierarchy) 242 TEST(RestApi, RestApiHierarchy)
225 { 243 {