Thank you! On Thu, Apr 17, 2008 at 6:19 AM, <[EMAIL PROTECTED]> wrote:
> Author: doll > Date: Thu Apr 17 06:19:42 2008 > New Revision: 649085 > > URL: http://svn.apache.org/viewvc?rev=649085&view=rev > Log: > Removed the gadgets guice dependency on the social directories by creating > a new social specific guice module. > > > Added: > > > incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/SocialApiGuiceModule.java > Modified: > > > incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/DefaultGuiceModule.java > incubator/shindig/trunk/java/social-api/src/main/webapp/WEB-INF/web.xml > > Modified: > incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/DefaultGuiceModule.java > URL: > http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/DefaultGuiceModule.java?rev=649085&r1=649084&r2=649085&view=diff > > ============================================================================== > --- > incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/DefaultGuiceModule.java > (original) > +++ > incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/DefaultGuiceModule.java > Thu Apr 17 06:19:42 2008 > @@ -21,28 +21,15 @@ > import com.google.inject.AbstractModule; > import com.google.inject.CreationException; > import com.google.inject.Inject; > -import com.google.inject.Provider; > import com.google.inject.Scopes; > -import com.google.inject.TypeLiteral; > import com.google.inject.name.Names; > import com.google.inject.spi.Message; > import org.apache.shindig.gadgets.oauth.OAuthFetcherFactory; > -import org.apache.shindig.social.GadgetDataHandler; > -import org.apache.shindig.social.opensocial.ActivitiesService; > -import org.apache.shindig.social.opensocial.DataService; > -import org.apache.shindig.social.opensocial.OpenSocialDataHandler; > -import org.apache.shindig.social.opensocial.PeopleService; > -import org.apache.shindig.social.samplecontainer.BasicActivitiesService; > -import org.apache.shindig.social.samplecontainer.BasicDataService; > -import org.apache.shindig.social.samplecontainer.BasicPeopleService; > -import org.apache.shindig.social.samplecontainer.StateFileDataHandler; > import org.apache.shindig.util.ResourceLoader; > > import java.io.IOException; > import java.io.InputStream; > -import java.util.ArrayList; > import java.util.Arrays; > -import java.util.List; > import java.util.Properties; > import java.util.concurrent.Executor; > import java.util.concurrent.Executors; > @@ -77,15 +64,6 @@ > bind(ContainerConfig.class).in(Scopes.SINGLETON); > bind(GadgetFeatureRegistry.class).in(Scopes.SINGLETON); > bind(GadgetServer.class).in(Scopes.SINGLETON); > - > - // Social guice > - bind(PeopleService.class).to(BasicPeopleService.class); > - bind(DataService.class).to(BasicDataService.class); > - bind(ActivitiesService.class).to(BasicActivitiesService.class); > - > - bind(new TypeLiteral<List<GadgetDataHandler>>() {}) > - .toProvider(GadgetDataHandlersProvider.class); > - > } > > public DefaultGuiceModule(Properties properties) { > @@ -106,22 +84,5 @@ > new Message("Unable to load properties: " + > DEFAULT_PROPERTIES))); > } > this.properties = properties; > - } > - > - public static class GadgetDataHandlersProvider > - implements Provider<List<GadgetDataHandler>> { > - List<GadgetDataHandler> handlers; > - > - @Inject > - public GadgetDataHandlersProvider(OpenSocialDataHandler > - openSocialDataHandler, StateFileDataHandler stateFileHandler) { > - handlers = new ArrayList<GadgetDataHandler>(); > - handlers.add(openSocialDataHandler); > - handlers.add(stateFileHandler); > - } > - > - public List<GadgetDataHandler> get() { > - return handlers; > - } > } > } > > Added: > 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=649085&view=auto > > ============================================================================== > --- > incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/SocialApiGuiceModule.java > (added) > +++ > incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/SocialApiGuiceModule.java > Thu Apr 17 06:19:42 2008 > @@ -0,0 +1,77 @@ > +/* > + * Licensed to the Apache Software Foundation (ASF) under one > + * or more contributor license agreements. See the NOTICE file > + * distributed with this work for additional information > + * regarding copyright ownership. The ASF licenses this file > + * to you under the Apache License, Version 2.0 (the > + * "License"); you may not use this file except in compliance > + * with the License. You may obtain a copy of the License at > + * > + * http://www.apache.org/licenses/LICENSE-2.0 > + * > + * Unless required by applicable law or agreed to in writing, > + * software distributed under the License is distributed on an > + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY > + * KIND, either express or implied. See the License for the > + * specific language governing permissions and limitations > + * under the License. > + */ > +package org.apache.shindig.social; > + > +import com.google.inject.AbstractModule; > +import com.google.inject.Inject; > +import com.google.inject.Provider; > +import com.google.inject.TypeLiteral; > +import org.apache.shindig.social.opensocial.ActivitiesService; > +import org.apache.shindig.social.opensocial.PeopleService; > +import org.apache.shindig.social.opensocial.DataService; > +import org.apache.shindig.social.opensocial.OpenSocialDataHandler; > +import org.apache.shindig.social.samplecontainer.BasicActivitiesService; > +import org.apache.shindig.social.samplecontainer.BasicPeopleService; > +import org.apache.shindig.social.samplecontainer.BasicDataService; > +import org.apache.shindig.social.samplecontainer.StateFileDataHandler; > +import org.apache.shindig.gadgets.RemoteContentFetcher; > +import org.apache.shindig.gadgets.BasicRemoteContentFetcher; > +import org.apache.shindig.gadgets.GadgetTokenDecoder; > +import org.apache.shindig.gadgets.BasicGadgetTokenDecoder; > + > +import java.util.Properties; > +import java.util.List; > +import java.util.ArrayList; > + > +/** > + * Provides http component injection on top of existing components. > + */ > +public class SocialApiGuiceModule extends AbstractModule { > + > + /** [EMAIL PROTECTED] */ > + @Override > + protected void configure() { > + bind(RemoteContentFetcher.class).to(BasicRemoteContentFetcher.class); > + bind(GadgetTokenDecoder.class).to(BasicGadgetTokenDecoder.class); > + > + bind(PeopleService.class).to(BasicPeopleService.class); > + bind(DataService.class).to(BasicDataService.class); > + bind(ActivitiesService.class).to(BasicActivitiesService.class); > + > + bind(new TypeLiteral<List<GadgetDataHandler>>() {}) > + .toProvider(GadgetDataHandlersProvider.class); > + } > + > + public static class GadgetDataHandlersProvider > + implements Provider<List<GadgetDataHandler>> { > + List<GadgetDataHandler> handlers; > + > + @Inject > + public GadgetDataHandlersProvider(OpenSocialDataHandler > + openSocialDataHandler, StateFileDataHandler stateFileHandler) { > + handlers = new ArrayList<GadgetDataHandler>(); > + handlers.add(openSocialDataHandler); > + handlers.add(stateFileHandler); > + } > + > + public List<GadgetDataHandler> get() { > + return handlers; > + } > + } > +} > > Modified: > incubator/shindig/trunk/java/social-api/src/main/webapp/WEB-INF/web.xml > URL: > http://svn.apache.org/viewvc/incubator/shindig/trunk/java/social-api/src/main/webapp/WEB-INF/web.xml?rev=649085&r1=649084&r2=649085&view=diff > > ============================================================================== > --- > incubator/shindig/trunk/java/social-api/src/main/webapp/WEB-INF/web.xml > (original) > +++ > incubator/shindig/trunk/java/social-api/src/main/webapp/WEB-INF/web.xml Thu > Apr 17 06:19:42 2008 > @@ -26,7 +26,7 @@ > <!-- If you have your own Guice module(s), put them here as a > colon-separated list. --> > <context-param> > <param-name>guice-modules</param-name> > - > <param-value>org.apache.shindig.gadgets.http.HttpGuiceModule</param-value> > + > <param-value>org.apache.shindig.social.SocialApiGuiceModule</param-value> > </context-param> > > <listener> > > > -- ~Kevin

