use of com.linkedin.restli.example.impl.PhotoDatabase in project rest.li by linkedin.
the class TestMockHttpServerFactory method getBeans.
/**
* Returns beans that are needed by the resource classes
*
* @return
*/
private Map<String, Object> getBeans() {
Map<String, Object> beans = new HashMap<String, Object>();
final PhotoDatabase photoDb = new PhotoDatabaseImpl(10);
beans.put("photoDb", photoDb);
beans.put("albumDb", new AlbumDatabaseImpl(5));
beans.put("albumEntryDb", new AlbumEntryDatabaseImpl(photoDb, 5));
return beans;
}
use of com.linkedin.restli.example.impl.PhotoDatabase in project rest.li by linkedin.
the class RestLiExampleBasicServer method createServer.
public static HttpServer createServer() {
// create Rest.li resource class information and initialize documentation generator
// only the resource classes in the specified package names are visible for public
final RestLiConfig config = new RestLiConfig();
config.addResourcePackageNames("com.linkedin.restli.example.impl");
config.setServerNodeUri(URI.create(getServerUrl()));
config.setDocumentationRequestHandler(new DefaultDocumentationRequestHandler());
// Create an instance of the Example Filter and add it to the config.
RestLiExampleFilter filter = new RestLiExampleFilter();
config.addFilter(filter);
// demonstrate dynamic dependency injection
final PhotoDatabase photoDb = new PhotoDatabaseImpl(10);
final SimpleBeanProvider beanProvider = new SimpleBeanProvider();
beanProvider.add("photoDb", photoDb);
beanProvider.add("albumDb", new AlbumDatabaseImpl(10));
beanProvider.add("albumEntryDb", new AlbumEntryDatabaseImpl(photoDb, 3));
// using InjectMockResourceFactory to keep examples spring-free
final ResourceFactory factory = new InjectMockResourceFactory(beanProvider);
final TransportDispatcher dispatcher = new DelegatingTransportDispatcher(new RestLiServer(config, factory));
return new HttpServerFactory(FilterChains.empty()).createServer(SERVER_PORT, dispatcher);
}
Aggregations