Managers.java

 1package eu.siacs.conversations.xmpp;
 2
 3import android.content.Context;
 4import com.google.common.collect.ClassToInstanceMap;
 5import com.google.common.collect.ImmutableClassToInstanceMap;
 6import eu.siacs.conversations.services.XmppConnectionService;
 7import eu.siacs.conversations.xmpp.manager.AbstractManager;
 8import eu.siacs.conversations.xmpp.manager.CarbonsManager;
 9import eu.siacs.conversations.xmpp.manager.DiscoManager;
10import eu.siacs.conversations.xmpp.manager.PingManager;
11import eu.siacs.conversations.xmpp.manager.PresenceManager;
12
13public class Managers {
14
15    private Managers() {
16        throw new AssertionError("Do not instantiate me");
17    }
18
19    public static ClassToInstanceMap<AbstractManager> get(
20            final XmppConnectionService context, final XmppConnection connection) {
21        return new ImmutableClassToInstanceMap.Builder<AbstractManager>()
22                .put(CarbonsManager.class, new CarbonsManager(context, connection))
23                .put(DiscoManager.class, new DiscoManager(context, connection))
24                .put(PingManager.class, new PingManager(context, connection))
25                .put(PresenceManager.class, new PresenceManager(context, connection))
26                .build();
27    }
28}