package com.ota;

import android.os.AsyncTask;
import android.util.Log;
import com.facebook.react.ReactInstanceManager;
import com.facebook.react.bridge.Callback;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.ReactContextBaseJavaModule;
import com.facebook.react.bridge.ReactMethod;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import android.content.Context;
import android.app.Activity;
import android.os.Handler;
import android.os.Looper;
import android.util.Log;
import com.facebook.react.ReactApplication;
import com.facebook.drawee.backends.pipeline.Fresco;
import com.facebook.imagepipeline.core.ImagePipelineConfig;
import com.facebook.cache.disk.DiskCacheConfig;

public class CodePushModule extends ReactContextBaseJavaModule {

  public CodePushModule(ReactApplicationContext reactContext) {
    super(reactContext);
  }

  @Override
  public String getName() {
    return "CodePush";
  }

  public static String getJSBundleFile(Context context) {
    File bundleFile = new File(context.getFilesDir(), "CodePush/xyteqitrd/index.android.bundle");
    return bundleFile.exists() ? bundleFile.getAbsolutePath() : null;
  }

  public static void initFreshco(Context context){
File codePushDir = new File(context.getFilesDir(), "CodePush/xyteqitrd");
File baseDirectory = codePushDir.getParentFile();

DiskCacheConfig diskCacheConfig = DiskCacheConfig.newBuilder(context)
    .setBaseDirectoryPath(baseDirectory)
    .setBaseDirectoryName("CodePushCache")
    .build();

ImagePipelineConfig imagePipelineConfig = ImagePipelineConfig.newBuilder(context)
    .setMainDiskCacheConfig(diskCacheConfig)
    .build();

Fresco.initialize(context, imagePipelineConfig);
  }
}
