package com.yandex.metrica.plugin.reactnative;

import com.facebook.react.bridge.Callback;
import io.appmetrica.analytics.StartupParamsCallback;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;

public class ReactNativeStartupParamsCallback implements StartupParamsCallback {
    private final Callback listener;

    ReactNativeStartupParamsCallback(Callback listener) {
        this.listener = listener;
    }

    @Override
    public void onReceive(@Nullable Result result) {
        if (result != null) {
            listener.invoke(result.deviceId, result.deviceIdHash, result.uuid, null);
        }
    }

    @Override
    public void onRequestError(@Nonnull Reason reason, @Nullable Result result) {
        listener.invoke(null, null, null, reason.toString());
    }
}
