package eu.se_bastiaan.popcorntimeremote.fragments;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.support.v4.app.Fragment;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.Window;
import eu.se_bastiaan.popcorntimeremote.activities.ControllerActivity;
import eu.se_bastiaan.popcorntimeremote.rpc.PopcornTimeRpcClient;
public abstract class BaseControlFragment extends Fragment {
private PopcornTimeRpcClient mRpc;
private Bundle mExtras;
protected Handler mHandler = new Handler(Looper.getMainLooper());
protected PopcornTimeRpcClient.Callback mBlankResponseCallback = new PopcornTimeRpcClient.Callback() {
@Override
public void onCompleted(Exception e, PopcornTimeRpcClient.RpcResponse result) {
if(e != null) {
e.printStackTrace();
}
}
};
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
mExtras = getArguments();
mRpc = new PopcornTimeRpcClient(mExtras.getString(ControllerActivity.KEY_IP), mExtras.getString(ControllerActivity.KEY_PORT), mExtras.getString(ControllerActivity.KEY_USERNAME), mExtras.getString(ControllerActivity.KEY_PASSWORD), mExtras.getString(ControllerActivity.KEY_VERSION));
}
protected PopcornTimeRpcClient getClient() {
if (mRpc == null) {
mRpc = new PopcornTimeRpcClient(mExtras.getString(ControllerActivity.KEY_IP), mExtras.getString(ControllerActivity.KEY_PORT), mExtras.getString(ControllerActivity.KEY_USERNAME), mExtras.getString(ControllerActivity.KEY_PASSWORD), mExtras.getString(ControllerActivity.KEY_VERSION));
}
return mRpc;
}
protected ActionBar getActionBar() {
return ((AppCompatActivity) getActivity()).getSupportActionBar();
}
protected View getActionBarView() {
Window window = getActivity().getWindow();
View decorView = window.getDecorView();
int resId = getResources().getIdentifier("toolbar", "id", getActivity().getPackageName());
return decorView.findViewById(resId);
}
}