@@ -0,0 +1,2093 @@
+// vim: et sw=4 sts=4 tabstop=4%0Apackage com.issc.gatt;%0A%0Aimport com.issc.Bluebit;%0Aimport com.issc.util.Log;%0A%0Aimport java.util.List;%0Aimport java.util.UUID;%0A%0Aimport android.bluetooth.BluetoothDevice;%0A%0Aimport com.samsung.android.sdk.bt.gatt.BluetoothGatt;%0Aimport com.samsung.android.sdk.bt.gatt.BluetoothGattCallback;%0Aimport com.samsung.android.sdk.bt.gatt.BluetoothGattCharacteristic;%0Aimport com.samsung.android.sdk.bt.gatt.BluetoothGattDescriptor;%0Aimport com.samsung.android.sdk.bt.gatt.BluetoothGattService;%0A%0A/**%0A * This is a wrapper.%0A *%0A * It will be an interface to help us to avoid depending on any specific%0A * platform.%0A **/%0Apublic class GattCharacteristic %7B%0A%0A    public final static int WRITE_TYPE_DEFAULT = BluetoothGattCharacteristic.WRITE_TYPE_DEFAULT;%0A    public final static int WRITE_TYPE_NO_RESPONSE = BluetoothGattCharacteristic.WRITE_TYPE_NO_RESPONSE;%0A%0A    private BluetoothGattCharacteristic mChr;%0A%0A    public GattCharacteristic(BluetoothGattCharacteristic chr) %7B%0A        mChr = chr;%0A    %7D%0A%0A    public BluetoothGattCharacteristic getCharacteristic() %7B%0A        return mChr;%0A    %7D%0A%0A    public BluetoothGattDescriptor getDescriptor(UUID uuid) %7B%0A        return mChr.getDescriptor(uuid);%0A    %7D%0A%0A    public List%3CBluetoothGattDescriptor%3E getDescriptors() %7B%0A        return mChr.getDescriptors();%0A    %7D%0A%0A    public Integer getIntValue(int type, int offset) %7B%0A        return mChr.getIntValue(type, offset);%0A    %7D%0A%0A    public int getPermissions() %7B%0A        return mChr.getPermissions();%0A    %7D%0A%0A    public int getProperties() %7B%0A        return mChr.getProperties();%0A    %7D%0A%0A    public UUID getUuid() %7B%0A        return mChr.getUuid();%0A    %7D%0A%0A    public byte%5B%5D getValue() %7B%0A        return mChr.getValue();%0A    %7D%0A%0A    public boolean setValue(byte%5B%5D value) %7B%0A        return mChr.setValue(value);%0A    %7D%0A%0A    public void setWriteType(int writeType) %7B%0A        if (writeType == WRITE_TYPE_NO_RESPONSE) %7B%0A            mChr.setWriteType(BluetoothGattCharacteristic.WRITE_TYPE_NO_RESPONSE);%0A        %7D else %7B%0A            mChr.setWriteType(BluetoothGattCharacteristic.WRITE_TYPE_DEFAULT);%0A        %7D%0A    %7D%0A%7D%0A%0A

add GattCharacteristic