// Path: de.hatoka.common/src/main/java/de/hatoka/common/capi/modules/CommonDaoModule.java
// public class CommonDaoModule implements Module
// {
//     private long start;
// 
//     public CommonDaoModule()
//     {
//         this(0);
//     }
// 
//     public CommonDaoModule(long sequenceStartPosition)
//     {
//         start = sequenceStartPosition;
//     }
// 
//     @Override
//     public void configure(Binder binder)
//     {
//         binder.bind(UUIDGenerator.class).to(UUIDGeneratorImpl.class).asEagerSingleton();
//         binder.bind(EncryptionUtils.class).to(EncryptionUtilsImpl.class).asEagerSingleton();
//         binder.bind(SequenceProvider.class).toInstance(new SequenceProviderImpl(start));
//     }
// 
// }
// 
// Path: de.hatoka.mail/src/main/java/de/hatoka/mail/capi/config/SmtpConfiguration.java
// public interface SmtpConfiguration
// {
//     Session getSession();
// }
// 
// Path: de.hatoka.mail/src/main/java/de/hatoka/mail/internal/modules/MailDaoJpaModule.java
// public class MailDaoJpaModule implements Module
// {
//     @Override
//     public void configure(Binder binder)
//     {
//         binder.bind(MessageIDGenerator.class).to(MessageIDGeneratorImpl.class).asEagerSingleton();
//         binder.bind(MailDao.class).to(MailDaoJpa.class).asEagerSingleton();
//     }
// 
// }
// 
// Path: de.hatoka.user/src/test/java/de/hatoka/user/internal/config/SmtpTestConfiguration.java
// public class SmtpTestConfiguration implements SmtpConfiguration
// {
// 
//     @Override
//     public Session getSession()
//     {
//         return null;
//     }
// }
// 
// Path: de.hatoka.user/src/main/java/de/hatoka/user/internal/modules/UserDaoJpaModule.java
// public class UserDaoJpaModule implements Module
// {
//     @Override
//     public void configure(Binder binder)
//     {
//         binder.bind(UserDao.class).to(UserDaoJpa.class).asEagerSingleton();
//     }
// }


import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import com.google.inject.Guice;
import com.google.inject.Injector;
import com.google.inject.Module;
import de.hatoka.common.capi.modules.CommonDaoModule;
import de.hatoka.mail.capi.config.SmtpConfiguration;
import de.hatoka.mail.internal.modules.MailDaoJpaModule;
import de.hatoka.mail.internal.modules.MailServiceModule;
import de.hatoka.user.capi.config.UserConfiguration;
import de.hatoka.user.internal.config.SmtpTestConfiguration;
import de.hatoka.user.internal.config.UserTestConfiguration;
import de.hatoka.user.internal.modules.UserBusinessModule;
import de.hatoka.user.internal.modules.UserDaoJpaModule;
package de.hatoka.user.capi.business;




public final class TestBusinessInjectorProvider
{
    public static Injector get(Module... modules)
    {
        List<Module> list = new ArrayList<>(Arrays.asList(modules));
        list.addAll(Arrays.asList(new CommonDaoModule(), new UserDaoJpaModule(), new UserBusinessModule(),
// Path: de.hatoka.common/src/main/java/de/hatoka/common/capi/modules/CommonDaoModule.java
// public class CommonDaoModule implements Module
// {
//     private long start;
// 
//     public CommonDaoModule()
//     {
//         this(0);
//     }
// 
//     public CommonDaoModule(long sequenceStartPosition)
//     {
//         start = sequenceStartPosition;
//     }
// 
//     @Override
//     public void configure(Binder binder)
//     {
//         binder.bind(UUIDGenerator.class).to(UUIDGeneratorImpl.class).asEagerSingleton();
//         binder.bind(EncryptionUtils.class).to(EncryptionUtilsImpl.class).asEagerSingleton();
//         binder.bind(SequenceProvider.class).toInstance(new SequenceProviderImpl(start));
//     }
// 
// }
// 
// Path: de.hatoka.mail/src/main/java/de/hatoka/mail/capi/config/SmtpConfiguration.java
// public interface SmtpConfiguration
// {
//     Session getSession();
// }
// 
// Path: de.hatoka.mail/src/main/java/de/hatoka/mail/internal/modules/MailDaoJpaModule.java
// public class MailDaoJpaModule implements Module
// {
//     @Override
//     public void configure(Binder binder)
//     {
//         binder.bind(MessageIDGenerator.class).to(MessageIDGeneratorImpl.class).asEagerSingleton();
//         binder.bind(MailDao.class).to(MailDaoJpa.class).asEagerSingleton();
//     }
// 
// }
// 
// Path: de.hatoka.user/src/test/java/de/hatoka/user/internal/config/SmtpTestConfiguration.java
// public class SmtpTestConfiguration implements SmtpConfiguration
// {
// 
//     @Override
//     public Session getSession()
//     {
//         return null;
//     }
// }
// 
// Path: de.hatoka.user/src/main/java/de/hatoka/user/internal/modules/UserDaoJpaModule.java
// public class UserDaoJpaModule implements Module
// {
//     @Override
//     public void configure(Binder binder)
//     {
//         binder.bind(UserDao.class).to(UserDaoJpa.class).asEagerSingleton();
//     }
// }


// Path: de.hatoka.user/src/test/java/de/hatoka/user/capi/business/TestBusinessInjectorProvider.java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import com.google.inject.Guice;
import com.google.inject.Injector;
import com.google.inject.Module;
import de.hatoka.common.capi.modules.CommonDaoModule;
import de.hatoka.mail.capi.config.SmtpConfiguration;
import de.hatoka.mail.internal.modules.MailDaoJpaModule;
import de.hatoka.mail.internal.modules.MailServiceModule;
import de.hatoka.user.capi.config.UserConfiguration;
import de.hatoka.user.internal.config.SmtpTestConfiguration;
import de.hatoka.user.internal.config.UserTestConfiguration;
import de.hatoka.user.internal.modules.UserBusinessModule;
import de.hatoka.user.internal.modules.UserDaoJpaModule;

package de.hatoka.user.capi.business;




public final class TestBusinessInjectorProvider
{
    public static Injector get(Module... modules)
    {
        List<Module> list = new ArrayList<>(Arrays.asList(modules));
        list.addAll(Arrays.asList(new CommonDaoModule(), new UserDaoJpaModule(), new UserBusinessModule(),
                        new MailDaoJpaModule(), new MailServiceModule(),