package org.mercury_im.messenger; import org.mercury_im.messenger.data.repository.Repositories; import org.mercury_im.messenger.entity.Account; import org.mercury_im.messenger.usecase.AddAccount; import org.mercury_im.messenger.xmpp.MercuryConnection; import java.util.HashMap; import java.util.Map; import javax.inject.Inject; public class Messenger { public static final String TAG = "MercuryIM"; private final Map connections = new HashMap<>(); private Repositories repositories; @Inject public Messenger(Repositories repositories) { this.repositories = repositories; } public void addConnection(MercuryConnection connection) { connections.put(connection.getAccount().getId(), connection); } public MercuryConnection getConnection(Account account) { return connections.get(account.getId()); } public AddAccount addAccount() { return new AddAccount(repositories.getAccountRepository(), this); } }