View Javadoc

1   package net.sf.josceleton.connection.impl;
2   
3   import net.sf.josceleton.connection.api.Connector;
4   import net.sf.josceleton.connection.impl.osc.ConnectionImplOscModule;
5   import net.sf.josceleton.connection.impl.service.motion.ConnectionImplServiceMotionModule;
6   import net.sf.josceleton.connection.impl.service.user.ConnectionImplServiceUserModule;
7   
8   import com.google.inject.AbstractModule;
9   import com.google.inject.Scopes;
10  import com.google.inject.assistedinject.FactoryProvider;
11  
12  /**
13   * @since 0.4
14   */
15  public class ConnectionImplModule extends AbstractModule {
16  
17  	@Override protected final void configure() {
18  		bind(Connector.class).to(ConnectorImpl.class).in(Scopes.SINGLETON);
19  		bind(OscMessageAddressRouter.class).to(OscMessageAddressRouterImpl.class).in(Scopes.SINGLETON);
20  		bind(ConnectionFactory.class).toProvider(
21  				FactoryProvider.newFactory(ConnectionFactory.class, ConnectionImpl.class));
22  		
23  		this.install(new ConnectionImplOscModule());
24  		this.install(new ConnectionImplServiceMotionModule());
25  		this.install(new ConnectionImplServiceUserModule());
26  	}
27  
28  }