/* * Created by Itzik Braun on 12/3/2015. * Copyright (c) 2015 deluge. All rights reserved. * * Last Modification at: 3/12/15 4:27 PM */ package com.braunster.chatsdk.network; import android.content.Context; import android.content.SharedPreferences; import com.braunster.chatsdk.BuildConfig; import com.braunster.chatsdk.R; import com.braunster.chatsdk.Utils.Debug; import com.braunster.chatsdk.Utils.volley.VolleyUtils; import com.braunster.chatsdk.dao.core.DaoCore; import com.bugsense.trace.BugSenseHandler; import org.apache.commons.lang3.StringUtils; /** * Created by itzik on 6/8/2014. */ public class BNetworkManager { private static final String TAG = BNetworkManager.class.getSimpleName(); private static final boolean DEBUG = Debug.BNetworkManager; private static final String CHAT_SDK_SHRED_PREFS = "ChatSDK_Prefs"; public static final boolean BUGSENSE_ENABLED = false, PushEnabledDefaultValue = true; public static SharedPreferences preferences; private static BNetworkManager instance; private AbstractNetworkAdapter networkAdapter; private static Context context; public static void init(Context ctx){ context = ctx; preferences = ctx.getSharedPreferences(CHAT_SDK_SHRED_PREFS, Context.MODE_PRIVATE); VolleyUtils.init(ctx); DaoCore.init(ctx); BFacebookManager.init(context.getString(R.string.facebook_id), ctx); //Bug Sense if (BNetworkManager.BUGSENSE_ENABLED && StringUtils.isNotEmpty( context.getString(R.string.bug_sense_key) )) { BugSenseHandler.initAndStartSession(ctx, context.getString(R.string.bug_sense_key)); BugSenseHandler.addCrashExtraData("Version", BuildConfig.VERSION_NAME); } } public static BNetworkManager sharedManager(){ if (instance == null) { instance = new BNetworkManager(); } return instance; } public void setNetworkAdapter(AbstractNetworkAdapter networkAdapter) { this.networkAdapter = networkAdapter; } public AbstractNetworkAdapter getNetworkAdapter() { return networkAdapter; } /** Always safe to call*/ public static SharedPreferences getUserPrefs(String entityId){ return context.getSharedPreferences(entityId, Context.MODE_PRIVATE); } /** Safe to call after login.*/ public static SharedPreferences getCurrentUserPrefs(){ return context.getSharedPreferences(sharedManager().getNetworkAdapter().currentUserModel().getEntityID(), Context.MODE_PRIVATE); } }