package be.iminds.ilabt.jfed;

import be.iminds.ilabt.jfed.lowlevel.api_scripts.GetUsersInProject;
import be.iminds.ilabt.jfed.lowlevel.api_wrapper.impl.AutomaticAggregateManagerWrapper;
import be.iminds.ilabt.jfed.lowlevel.api_wrapper.impl.AutomaticUserAndSliceApiWrapper;
import com.google.inject.AbstractModule;

import javax.inject.Singleton;

/**
 * CoreModule
 */
public class PostLoginCoreModule extends AbstractModule {
    @Override
    protected void configure() {
        bind(GetUsersInProject.class);

        bind(AutomaticAggregateManagerWrapper.AutomaticAggregateManagerWrapperFactory.class).
                to(AutomaticAggregateManagerWrapper.BasicAutomaticAggregateManagerWrapperFactory.class).in(Singleton.class);

        bind(AutomaticUserAndSliceApiWrapper.AutomaticUserAndSliceApiWrapperFactory.class).
                to(AutomaticUserAndSliceApiWrapper.BasicAutomaticUserAndSliceApiWrapperFactory.class).in(Singleton.class);
    }
}
