
io.relayr.java.api.mock.MockChannelApi Maven / Gradle / Ivy
package io.relayr.java.api.mock;
import com.google.gson.reflect.TypeToken;
import javax.inject.Inject;
import io.relayr.java.api.ChannelApi;
import io.relayr.java.model.channel.ChannelDefinition;
import io.relayr.java.model.channel.ExistingChannel;
import io.relayr.java.model.channel.DataChannel;
import io.relayr.java.model.channel.PublishChannel;
import rx.Observable;
import rx.Subscriber;
public class MockChannelApi implements ChannelApi {
private final MockBackend mMockBackend;
@Inject
public MockChannelApi(MockBackend mockBackend) {
mMockBackend = mockBackend;
}
@Override
public Observable create(ChannelDefinition mqttDefinition) {
return mMockBackend.createObservable(new TypeToken() {
}, MockBackend.MQTT_CREDENTIALS);
}
@Override
public Observable delete(String channelId) {
return Observable.create(new Observable.OnSubscribe() {
@Override
public void call(Subscriber super Void> subscriber) {
subscriber.onNext(null);
subscriber.onCompleted();
}
});
}
@Override
public Observable getChannels(String deviceId) {
return Observable.empty();
}
@Override
public Observable createForDevice(ChannelDefinition mqttDefinition, String deviceId) {
return mMockBackend.createObservable(new TypeToken() {
}, MockBackend.MQTT_DEVICE_CHANNEL);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy