Author: ieb
Date: Sun Jul 20 11:00:48 2008
New Revision: 678290
URL: http://svn.apache.org/viewvc?rev=678290&view=rev
Log:
Unbound the DataServiceServlet BeanConverters from their implementations and
rebound them to the
Interface. Modified the injected setter to use named beans and updated the
relevant modules to inject the same
implementations as before.
This change will allow alternative implementations of a BeanConverter to be
injected by Guice, and avoid binding
to implementations. There is no functional change created by this patch. About
10 lines in total.
I am assuming commits like this, which dont generate functional change are
small enough not to require
JIRA discussion, but please tell me if this is not the case ?
Very happy to revert/modify if required, just let me know.
Modified:
incubator/shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndModule.java
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/SocialApiGuiceModule.java
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/DataServiceServlet.java
Modified:
incubator/shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndModule.java
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndModule.java?rev=678290&r1=678289&r2=678290&view=diff
==============================================================================
---
incubator/shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndModule.java
(original)
+++
incubator/shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndModule.java
Sun Jul 20 11:00:48 2008
@@ -19,6 +19,9 @@
import org.apache.shindig.common.servlet.ParameterFetcher;
import org.apache.shindig.social.dataservice.DataServiceServletFetcher;
+import org.apache.shindig.social.opensocial.util.BeanConverter;
+import org.apache.shindig.social.opensocial.util.BeanJsonConverter;
+import org.apache.shindig.social.opensocial.util.BeanXmlConverter;
import com.google.inject.AbstractModule;
import com.google.inject.name.Names;
@@ -33,5 +36,8 @@
.toInstance("sampledata/canonicaldb.json");
bind(ParameterFetcher.class).annotatedWith(Names.named("DataServiceServlet"))
.to(DataServiceServletFetcher.class);
+
bind(BeanConverter.class).annotatedWith(Names.named("bean.converter.xml")).to(BeanXmlConverter.class);
+
bind(BeanConverter.class).annotatedWith(Names.named("bean.converter.json")).to(BeanJsonConverter.class);
+
}
}
Modified:
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/SocialApiGuiceModule.java
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/SocialApiGuiceModule.java?rev=678290&r1=678289&r2=678290&view=diff
==============================================================================
---
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/SocialApiGuiceModule.java
(original)
+++
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/SocialApiGuiceModule.java
Sun Jul 20 11:00:48 2008
@@ -28,6 +28,9 @@
import org.apache.shindig.social.oauth.OAuthConsumerStore;
import org.apache.shindig.social.oauth.OAuthTokenPrincipalMapper;
import org.apache.shindig.social.oauth.OAuthTokenStore;
+import org.apache.shindig.social.opensocial.util.BeanConverter;
+import org.apache.shindig.social.opensocial.util.BeanJsonConverter;
+import org.apache.shindig.social.opensocial.util.BeanXmlConverter;
import
org.apache.shindig.social.samplecontainer.SampleContainerHandlerProvider;
import com.google.inject.AbstractModule;
@@ -65,6 +68,8 @@
.to(BasicOAuthConsumerStore.class).in(Scopes.SINGLETON);
bind(OAuthTokenPrincipalMapper.class)
.to(BasicOAuthTokenPrincipalMapper.class).in(Scopes.SINGLETON);
+
bind(BeanConverter.class).annotatedWith(Names.named("bean.converter.xml")).to(BeanXmlConverter.class);
+
bind(BeanConverter.class).annotatedWith(Names.named("bean.converter.json")).to(BeanJsonConverter.class);
}
}
Modified:
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/DataServiceServlet.java
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/DataServiceServlet.java?rev=678290&r1=678289&r2=678290&view=diff
==============================================================================
---
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/DataServiceServlet.java
(original)
+++
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/DataServiceServlet.java
Sun Jul 20 11:00:48 2008
@@ -25,8 +25,6 @@
import org.apache.shindig.social.ResponseItem;
import org.apache.shindig.social.ResponseError;
import org.apache.shindig.social.opensocial.util.BeanConverter;
-import org.apache.shindig.social.opensocial.util.BeanJsonConverter;
-import org.apache.shindig.social.opensocial.util.BeanXmlConverter;
import com.google.common.collect.Maps;
import com.google.inject.Inject;
@@ -65,8 +63,8 @@
private transient SecurityTokenDecoder securityTokenDecoder;
private transient Map<String, Class<? extends DataRequestHandler>> handlers;
- private transient BeanJsonConverter jsonConverter;
- private transient BeanXmlConverter xmlConverter;
+ private transient BeanConverter jsonConverter;
+ private transient BeanConverter xmlConverter;
private transient ParameterFetcher parameterFetcher;
private static final String JSON_BATCH_ROUTE = "jsonBatch";
@@ -82,7 +80,7 @@
}
@Inject
- public void setBeanConverters(BeanJsonConverter jsonConverter,
BeanXmlConverter xmlConverter) {
+ public void setBeanConverters(@Named("bean.converter.json") BeanConverter
jsonConverter, @Named("bean.converter.xml") BeanConverter xmlConverter) {
this.jsonConverter = jsonConverter;
this.xmlConverter = xmlConverter;
}