> On Feb. 25, 2014, 1:47 p.m., Stanton Sievers wrote: > > In your environment, what pattern are you using to inject your own > > CollectionOptionsFactory? Are you binding a subclass to the concrete > > class, like so: > > > > bind(CollectionOptionsFactory.class).to(YourCollectionOptionsFactory.class) > > > >
Pretty much. As it is stateless and doesn't need any further injection I'm binding it to a specific instance even: bind(CollectionOptionsFactory.class).toInstance(new SearchCollectionOptions.Factory()); I had a brief look at using "assisted injects" with Guice for it, but that looked like overkill :) - Andreas ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/18435/#review35392 ----------------------------------------------------------- On Feb. 24, 2014, 9:14 p.m., Andreas Kohn wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/18435/ > ----------------------------------------------------------- > > (Updated Feb. 24, 2014, 9:14 p.m.) > > > Review request for shindig. > > > Bugs: SHINDIG-1968 > https://issues.apache.org/jira/browse/SHINDIG-1968 > > > Repository: shindig > > > Description > ------- > > Introduce a CollectionOptionsFactory class, and inject & use that instead of > creating CollectionOptions instances explicitly. > > > See bug for details. > > > Diffs > ----- > > > /trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/ActivityHandler.java > 1571416 > > /trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/ActivityStreamHandler.java > 1571416 > > /trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/AlbumHandler.java > 1571416 > > /trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/GroupHandler.java > 1571416 > > /trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/MediaItemHandler.java > 1571416 > > /trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/MessageHandler.java > 1571416 > > /trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/service/PersonHandler.java > 1571416 > > /trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/spi/CollectionOptions.java > 1571416 > > /trunk/java/social-api/src/main/java/org/apache/shindig/social/opensocial/spi/CollectionOptionsFactory.java > PRE-CREATION > > /trunk/java/social-api/src/test/java/org/apache/shindig/social/opensocial/service/ActivityHandlerTest.java > 1571416 > > /trunk/java/social-api/src/test/java/org/apache/shindig/social/opensocial/service/ActivityStreamHandlerTest.java > 1571416 > > /trunk/java/social-api/src/test/java/org/apache/shindig/social/opensocial/service/AlbumHandlerTest.java > 1571416 > > /trunk/java/social-api/src/test/java/org/apache/shindig/social/opensocial/service/MediaItemHandlerTest.java > 1571416 > > /trunk/java/social-api/src/test/java/org/apache/shindig/social/opensocial/service/MessageHandlerTest.java > 1571416 > > /trunk/java/social-api/src/test/java/org/apache/shindig/social/opensocial/service/PersonHandlerTest.java > 1571416 > > Diff: https://reviews.apache.org/r/18435/diff/ > > > Testing > ------- > > Patch used in production application to inject a different implementation: a > big amount of minimally changed copy/pasted code could be removed, and > replaced with the shindig-provided *Handler/*Service implementations. > > > Thanks, > > Andreas Kohn > >