// Path: src/main/java/com/inovex/zabbixmobile/model/ZaxPreferences.java
// public class ZaxPreferences {
// 
// 	private SharedPreferences mPref;
// 
// 	public static ZaxPreferences getInstance(Context context) {
// 		return (new ZaxPreferences(context));
// 	}
// 
// 	private ZaxPreferences(Context context) {
// 		refresh(context);
// 	}
// 
// 	public int getWidgetRefreshInterval() {
// 		try {
// 			return Integer.parseInt(mPref.getString(
// 					"widget_refresh_interval_mins", "15"));
// 		} catch (NumberFormatException e) {
// 			return 0;
// 		}
// 	}
// 
// 	public void registerOnSharedPreferenceChangeListener(
// 			OnSharedPreferenceChangeListener listener) {
// 		mPref.registerOnSharedPreferenceChangeListener(listener);
// 	}
// 
// 	public void unregisterOnSharedPreferenceChangeListener(
// 			OnSharedPreferenceChangeListener listener) {
// 		mPref.unregisterOnSharedPreferenceChangeListener(listener);
// 	}
// 
// 	public boolean isDarkTheme() {
// 		return mPref.getBoolean("dark_theme", false);
// 	}
// 
// 	public String getPersistedServerName(){
// 		return mPref.getString("server_name", "");
// 	}
// 
// 	public void setPersistedServerName(String name){
// 		Editor edit = mPref.edit();
// 		edit.putString("server_name",name);
// 	}
// 
// 	public long getServerSelection() {
// 		return mPref.getLong("server_selection", 0);
// 	}
// 
// 	public void setServerSelection(long selection) {
// 		Editor edit = mPref.edit();
// 		edit.putLong("server_selection", selection);
// 		edit.commit();
// 	}
// 
// 	public void refresh(Context context) {
// 		SharedPreferences pref = PreferenceManager
// 				.getDefaultSharedPreferences(context);
// 		mPref = pref;
// 	}
// 
// 	public boolean hasOldServerPreferences() {
// 		if (mPref.getString("zabbix_url", null) != null) {
// 			return true;
// 		}
// 		return false;
// 	}
// 
// 	public void migrateServerPreferences(Context context, long id) {
// 		ZaxServerPreferences p = new ZaxServerPreferences(context, id, true);
// 		p.savePrefs();
// 
// 		refresh(context);
// 		mPref.edit().remove("zabbix_url").commit();
// 	}
// 
// 	public boolean isOldNotificationIcons() {
// 		return mPref.getBoolean("zabbix_push_old_icons", false);
// 	}
// 
// 	public boolean isPushEnabled() {
// 		return mPref.getBoolean("pubnub_push_enabled", mPref.getBoolean("zabbix_push_enabled",false));
// 	}
// 
// 	public String getPushRingtone() {
// 		return mPref.getString("zabbix_push_ringtone", null);
// 	}
// 
// 	public String getPushOkRingtone(){
// 		return mPref.getString("push_ok_ringtone", null);
// 	}
// 
// 	public String getPushSubscribeKey() {
// 		return mPref.getString("pubnub_push_subscribe_key", mPref.getString("zabbix_push_subscribe_key", "")).trim();
// 	}
// 
// 	public void setWidgetServer(int mAppWidgetId, long id) {
// 		Editor edit = mPref.edit();
// 		edit.putLong("widget_server_"+mAppWidgetId, id);
// 		edit.commit();
// 		Log.d("ZaxPreferences", "widget server="+mAppWidgetId+"="+id);
// 	}
// 
// 	public long getWidgetServer(int mAppWidgetId) {
// 		Log.d("ZaxPreferences", "get widget server from "+mAppWidgetId+"="+mPref.getLong("widget_server_"+mAppWidgetId, -1));
// 
// 		return mPref.getLong("widget_server_"+mAppWidgetId, -1);
// 	}
// 
// 	public String getGCMSenderID() {
// 		return mPref.getString("gcm_sender_id", "");
// 	}
// 
// 	public void setTokenSentToServer(boolean status){
// 		mPref.edit().putBoolean("sent_token_to_server",status);
// 	}
// 
// 	public boolean isTokenSentToServer(){
// 		return mPref.getBoolean("sent_token_to_server",false);
// 	}
// 
// 	public String getGCMServerUrl() {
// 		return mPref.getString("gcm_server_url", "");
// 	}
// 
// 	public boolean isVibrate() {return mPref.getBoolean("vibrate",true);};
// }


import android.app.IntentService;
import android.content.Intent;
import android.util.Log;
import com.google.android.gms.gcm.GoogleCloudMessaging;
import com.google.android.gms.iid.InstanceID;
import com.inovex.zabbixmobile.model.ZaxPreferences;
import org.json.JSONException;
import org.json.JSONObject;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import javax.net.ssl.SSLHandshakeException;
package com.inovex.zabbixmobile.push.gcm;






/**
 * Created by felix on 16/10/15.
 */
public class RegistrationIntentService extends IntentService{
	private static final String TAG = "RegIntentService";
// Path: src/main/java/com/inovex/zabbixmobile/model/ZaxPreferences.java
// public class ZaxPreferences {
// 
// 	private SharedPreferences mPref;
// 
// 	public static ZaxPreferences getInstance(Context context) {
// 		return (new ZaxPreferences(context));
// 	}
// 
// 	private ZaxPreferences(Context context) {
// 		refresh(context);
// 	}
// 
// 	public int getWidgetRefreshInterval() {
// 		try {
// 			return Integer.parseInt(mPref.getString(
// 					"widget_refresh_interval_mins", "15"));
// 		} catch (NumberFormatException e) {
// 			return 0;
// 		}
// 	}
// 
// 	public void registerOnSharedPreferenceChangeListener(
// 			OnSharedPreferenceChangeListener listener) {
// 		mPref.registerOnSharedPreferenceChangeListener(listener);
// 	}
// 
// 	public void unregisterOnSharedPreferenceChangeListener(
// 			OnSharedPreferenceChangeListener listener) {
// 		mPref.unregisterOnSharedPreferenceChangeListener(listener);
// 	}
// 
// 	public boolean isDarkTheme() {
// 		return mPref.getBoolean("dark_theme", false);
// 	}
// 
// 	public String getPersistedServerName(){
// 		return mPref.getString("server_name", "");
// 	}
// 
// 	public void setPersistedServerName(String name){
// 		Editor edit = mPref.edit();
// 		edit.putString("server_name",name);
// 	}
// 
// 	public long getServerSelection() {
// 		return mPref.getLong("server_selection", 0);
// 	}
// 
// 	public void setServerSelection(long selection) {
// 		Editor edit = mPref.edit();
// 		edit.putLong("server_selection", selection);
// 		edit.commit();
// 	}
// 
// 	public void refresh(Context context) {
// 		SharedPreferences pref = PreferenceManager
// 				.getDefaultSharedPreferences(context);
// 		mPref = pref;
// 	}
// 
// 	public boolean hasOldServerPreferences() {
// 		if (mPref.getString("zabbix_url", null) != null) {
// 			return true;
// 		}
// 		return false;
// 	}
// 
// 	public void migrateServerPreferences(Context context, long id) {
// 		ZaxServerPreferences p = new ZaxServerPreferences(context, id, true);
// 		p.savePrefs();
// 
// 		refresh(context);
// 		mPref.edit().remove("zabbix_url").commit();
// 	}
// 
// 	public boolean isOldNotificationIcons() {
// 		return mPref.getBoolean("zabbix_push_old_icons", false);
// 	}
// 
// 	public boolean isPushEnabled() {
// 		return mPref.getBoolean("pubnub_push_enabled", mPref.getBoolean("zabbix_push_enabled",false));
// 	}
// 
// 	public String getPushRingtone() {
// 		return mPref.getString("zabbix_push_ringtone", null);
// 	}
// 
// 	public String getPushOkRingtone(){
// 		return mPref.getString("push_ok_ringtone", null);
// 	}
// 
// 	public String getPushSubscribeKey() {
// 		return mPref.getString("pubnub_push_subscribe_key", mPref.getString("zabbix_push_subscribe_key", "")).trim();
// 	}
// 
// 	public void setWidgetServer(int mAppWidgetId, long id) {
// 		Editor edit = mPref.edit();
// 		edit.putLong("widget_server_"+mAppWidgetId, id);
// 		edit.commit();
// 		Log.d("ZaxPreferences", "widget server="+mAppWidgetId+"="+id);
// 	}
// 
// 	public long getWidgetServer(int mAppWidgetId) {
// 		Log.d("ZaxPreferences", "get widget server from "+mAppWidgetId+"="+mPref.getLong("widget_server_"+mAppWidgetId, -1));
// 
// 		return mPref.getLong("widget_server_"+mAppWidgetId, -1);
// 	}
// 
// 	public String getGCMSenderID() {
// 		return mPref.getString("gcm_sender_id", "");
// 	}
// 
// 	public void setTokenSentToServer(boolean status){
// 		mPref.edit().putBoolean("sent_token_to_server",status);
// 	}
// 
// 	public boolean isTokenSentToServer(){
// 		return mPref.getBoolean("sent_token_to_server",false);
// 	}
// 
// 	public String getGCMServerUrl() {
// 		return mPref.getString("gcm_server_url", "");
// 	}
// 
// 	public boolean isVibrate() {return mPref.getBoolean("vibrate",true);};
// }


// Path: src/main/java/com/inovex/zabbixmobile/push/gcm/RegistrationIntentService.java
import android.app.IntentService;
import android.content.Intent;
import android.util.Log;
import com.google.android.gms.gcm.GoogleCloudMessaging;
import com.google.android.gms.iid.InstanceID;
import com.inovex.zabbixmobile.model.ZaxPreferences;
import org.json.JSONException;
import org.json.JSONObject;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import javax.net.ssl.SSLHandshakeException;

package com.inovex.zabbixmobile.push.gcm;






/**
 * Created by felix on 16/10/15.
 */
public class RegistrationIntentService extends IntentService{
	private static final String TAG = "RegIntentService";
	private ZaxPreferences mZaxPreferences;