package it.geosolutions.geocollect.android.core.wmc.wmc; import android.bluetooth.BluetoothDevice; import it.geosolutions.geocollect.android.core.wmc.model.Configuration; import it.geosolutions.geocollect.android.core.wmc.model.WMCReadResult; /** * Created by Robert Oehler on 27.10.16. * */ public interface WMCFacade { /** * connect to a Bluetooth device identified by its mac address * @param device the device to connect to */ void connect(final BluetoothDevice device); /** * disconnect device */ void disConnect(); /** * @return current connection state */ boolean isConnected(); /** * read configuration * @return the configuration read from device or null if an error occurred */ Configuration readConfig(); /** * write a configuration to the device * @param configuration the configuration to write * @return if the operation was successful */ boolean writeConfig(final Configuration configuration); WMCReadResult read(); String getConnectionState(); boolean sendSysReset(); boolean syncTime(); boolean activateGSM(final boolean on); boolean sendTestSMS(final String recipient); boolean presetOverallCounter(final double preset); boolean clear(final int week_day_index); interface ConnectionListener { public void onDeviceConnected(String name); public void onDeviceDisconnected(); public void onDeviceConnectionFailed(String error); } }