All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.relayr.java.api.mock.MockRelayrApi Maven / Gradle / Ivy

package io.relayr.java.api.mock;

import com.google.gson.reflect.TypeToken;

import java.util.List;

import javax.inject.Inject;

import io.relayr.java.api.RelayrApi;
import io.relayr.java.model.Transmitter;
import io.relayr.java.model.TransmitterDevice;
import rx.Observable;
import rx.Subscriber;

import static io.relayr.java.api.mock.MockBackend.USER_TRANSMITTER_DEVICES;
import static io.relayr.java.api.mock.MockBackend.USERS_TRANSMITTER;

public class MockRelayrApi implements RelayrApi {

    private final MockBackend backend;

    Observable emptyObservable = Observable.create(new Observable.OnSubscribe() {
        @Override
        public void call(Subscriber subscriber) {
            subscriber.onNext(null);
        }
    });

    @Inject public MockRelayrApi(MockBackend mockBackend) {
        backend = mockBackend;
    }

    @Override
    public Observable registerTransmitter(Transmitter transmitter) {
        return Observable.just(transmitter);
    }

    @Override
    public Observable getTransmitter(String transmitter) {
        return backend.createObservable(new TypeToken() {
        }, USERS_TRANSMITTER);
    }

    @Override
    public Observable updateTransmitter(String id, Transmitter transmitter) {
        return Observable.just(transmitter);
    }

    @Override
    public Observable deleteTransmitter(String transmitterId) {
        return emptyObservable;
    }

    @Override
    public Observable deleteWunderBar(String transmitterId) {
        return emptyObservable;
    }

    @Override
    public Observable> getTransmitterDevices(String transmitter) {
        return backend.createObservable(new TypeToken>() {
        }, USER_TRANSMITTER_DEVICES);
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy