package safeluck.drive.evaluation.DB.signalConfigdb;
|
|
import android.content.Context;
|
|
import androidx.annotation.NonNull;
|
import androidx.work.Worker;
|
import androidx.work.WorkerParameters;
|
|
import com.anyun.exam.lib.MyLog;
|
import com.google.gson.Gson;
|
import com.google.gson.reflect.TypeToken;
|
import com.google.gson.stream.JsonReader;
|
|
import java.io.IOException;
|
import java.io.InputStream;
|
import java.io.InputStreamReader;
|
import java.lang.reflect.Type;
|
import java.util.List;
|
|
import safeluck.drive.evaluation.DB.WorkRoomDataBase;
|
|
public class SignalConfigInitWorker extends Worker {
|
private static final String TAG = "SignalConfigInitWorker";
|
public SignalConfigInitWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) {
|
super(context, workerParams);
|
}
|
|
@NonNull
|
@Override
|
public Result doWork() {
|
MyLog.i(TAG,"信号配置表初始化");
|
|
try {
|
InputStream inputStream = getApplicationContext().getAssets().open("signal_config_file.json");
|
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
|
JsonReader jsonReader = new JsonReader(inputStreamReader);
|
|
Gson gson = new Gson();
|
Type type = new TypeToken<List<SingalConfig>>(){}.getType();
|
|
List<SingalConfig> mstus=gson.fromJson(jsonReader, type);
|
WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getSignalConfigDao().insertAll(mstus);
|
} catch (IOException e) {
|
e.printStackTrace();
|
return Result.failure();
|
}
|
return Result.success();
|
}
|
}
|