package com.wollfish.logsene;

import android.content.pm.PackageManager;
import android.os.Bundle;
import android.util.Log;

import com.getcapacitor.JSObject;
import com.getcapacitor.NativePlugin;
import com.getcapacitor.Plugin;
import com.getcapacitor.PluginCall;
import com.getcapacitor.PluginMethod;

@NativePlugin
public class Logsene extends Plugin {

    @Override
    public void load() {
        super.load();
        Log.i("Logsene", "Initializing logsene");
        try {
            com.sematext.logseneandroid.Logsene.init(this.getContext());
        } catch (Exception e) {
            Log.e("Logsene", "Initializing failed", e);
        }
    }

    @PluginMethod
    public void setMetaFields(PluginCall call) {
        com.sematext.logseneandroid.Logsene.setDefaultMeta(call.getData());
    }

    @PluginMethod
    public void logEvent(PluginCall call) {
        if (com.sematext.logseneandroid.Logsene.isInitialized()) {
            com.sematext.logseneandroid.Logsene logger = com.sematext.logseneandroid.Logsene.getInstance();
            logger.log(call.getString("level"), call.getString("message"));
        } else {
            Log.w("Logsene", "Logsene is not initialized");
        }
    }
}
