package eu.hgross.blaubot.mock; import java.util.Arrays; import java.util.List; import eu.hgross.blaubot.core.IBlaubotAdapter; import eu.hgross.blaubot.core.IBlaubotConnection; import eu.hgross.blaubot.core.IBlaubotDevice; import eu.hgross.blaubot.core.acceptor.IBlaubotIncomingConnectionListener; import eu.hgross.blaubot.core.acceptor.discovery.IBlaubotBeaconStore; import eu.hgross.blaubot.core.connector.IBlaubotConnector; import eu.hgross.blaubot.core.connector.IncompatibleBlaubotDeviceException; /** * Connector for debugging purposes. * * @author Henning Gross {@literal (mail.to@henning-gross.de)} * */ public class BlaubotConnectorMock implements IBlaubotConnector { private IBlaubotIncomingConnectionListener incomingConnectionListener; private AdapterMock adapter; private IBlaubotBeaconStore beaconStore; public BlaubotConnectorMock(AdapterMock adapter) { this.adapter = adapter; } @Override public List<String> getSupportedAcceptorTypes() { return Arrays.asList("MockAcceptor"); } @Override public IBlaubotAdapter getAdapter() { return adapter; } @Override public void setBeaconStore(IBlaubotBeaconStore beaconStore) { this.beaconStore = beaconStore; } /** * Mock a new connection by directly injecting it via this connector * @param connection the connection to be mocked * @param connectionAcceptorMock the mocked acceptor */ public void mockConnectToDevice(IBlaubotConnection connection, BlaubotConnectionAcceptorMock connectionAcceptorMock) { connectionAcceptorMock.mockNewConnection(connection); this.incomingConnectionListener.onConnectionEstablished(connection); } @Override public void setIncomingConnectionListener(IBlaubotIncomingConnectionListener acceptorConnectorListener) { this.incomingConnectionListener = acceptorConnectorListener; } @Override public IBlaubotConnection connectToBlaubotDevice(IBlaubotDevice blaubotDevice) throws IncompatibleBlaubotDeviceException { // TODO Auto-generated method stub return null; } }