package com.uxxu.konashi.lib.dispatcher; import com.uxxu.konashi.lib.Konashi; import com.uxxu.konashi.lib.KonashiUUID; import com.uxxu.konashi.lib.store.AioStore; import com.uxxu.konashi.lib.util.AioUtils; import java.util.UUID; /** * Created by izumin on 9/19/15. */ public enum AioStoreUpdater implements CharacteristicDispatcher.Updater<AioStore> { READ_AIO0(KonashiUUID.ANALOG_READ0_UUID) { @Override public void update(AioStore store, byte[] value) { updateAioValue(store, Konashi.AIO0, value); } }, READ_AIO1(KonashiUUID.ANALOG_READ1_UUID) { @Override public void update(AioStore store, byte[] value) { updateAioValue(store, Konashi.AIO1, value); } }, READ_AIO2(KonashiUUID.ANALOG_READ2_UUID) { @Override public void update(AioStore store, byte[] value) { updateAioValue(store, Konashi.AIO2, value); } }; private final UUID mUuid; AioStoreUpdater(UUID uuid) { mUuid = uuid; } public UUID getUuid() { return mUuid; } protected void updateAioValue(AioStore store, int pin, byte[] value) { store.setValue(pin, AioUtils.getAnalogValue(pin, value)); } }