Blame client/Android/Studio/freeRDPCore/src/main/java/com/freerdp/freerdpcore/domain/BookmarkBase.java

Packit 1fb8d4
/*
Packit 1fb8d4
   Defines base attributes of a bookmark object
Packit 1fb8d4
Packit 1fb8d4
   Copyright 2013 Thincast Technologies GmbH, Author: Martin Fleisz
Packit 1fb8d4
Packit Service 5a9772
   This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
Packit Service 5a9772
   If a copy of the MPL was not distributed with this file, You can obtain one at
Packit Service 5a9772
   http://mozilla.org/MPL/2.0/.
Packit 1fb8d4
*/
Packit 1fb8d4
Packit 1fb8d4
package com.freerdp.freerdpcore.domain;
Packit 1fb8d4
Packit 1fb8d4
import android.content.SharedPreferences;
Packit 1fb8d4
import android.os.Parcel;
Packit 1fb8d4
import android.os.Parcelable;
Packit 1fb8d4
Packit 1fb8d4
import com.freerdp.freerdpcore.application.GlobalApp;
Packit 1fb8d4
Packit 1fb8d4
import java.util.Locale;
Packit 1fb8d4
Packit Service 5a9772
public class BookmarkBase implements Parcelable, Cloneable
Packit Service 5a9772
{
Packit Service 5a9772
	public static final int TYPE_INVALID = -1;
Packit Service 5a9772
	public static final int TYPE_MANUAL = 1;
Packit Service 5a9772
	public static final int TYPE_QUICKCONNECT = 2;
Packit Service 5a9772
	public static final int TYPE_PLACEHOLDER = 3;
Packit Service 5a9772
	public static final int TYPE_CUSTOM_BASE = 1000;
Packit Service 5a9772
	public static final Parcelable.Creator<BookmarkBase> CREATOR =
Packit Service 5a9772
	    new Parcelable.Creator<BookmarkBase>() {
Packit Service 5a9772
		    public BookmarkBase createFromParcel(Parcel in)
Packit Service 5a9772
		    {
Packit Service 5a9772
			    return new BookmarkBase(in);
Packit Service 5a9772
		    }
Packit Service 5a9772
Packit Service 5a9772
		    @Override public BookmarkBase[] newArray(int size)
Packit Service 5a9772
		    {
Packit Service 5a9772
			    return new BookmarkBase[size];
Packit Service 5a9772
		    }
Packit Service 5a9772
	    };
Packit Service 5a9772
	protected int type;
Packit Service 5a9772
	private long id;
Packit Service 5a9772
	private String label;
Packit Service 5a9772
	private String username;
Packit Service 5a9772
	private String password;
Packit Service 5a9772
	private String domain;
Packit Service 5a9772
	private ScreenSettings screenSettings;
Packit Service 5a9772
	private PerformanceFlags performanceFlags;
Packit Service 5a9772
	private AdvancedSettings advancedSettings;
Packit Service 5a9772
	private DebugSettings debugSettings;
Packit Service 5a9772
Packit Service 5a9772
	public BookmarkBase(Parcel parcel)
Packit Service 5a9772
	{
Packit Service 5a9772
		type = parcel.readInt();
Packit Service 5a9772
		id = parcel.readLong();
Packit Service 5a9772
		label = parcel.readString();
Packit Service 5a9772
		username = parcel.readString();
Packit Service 5a9772
		password = parcel.readString();
Packit Service 5a9772
		domain = parcel.readString();
Packit Service 5a9772
Packit Service 5a9772
		screenSettings = parcel.readParcelable(ScreenSettings.class.getClassLoader());
Packit Service 5a9772
		performanceFlags = parcel.readParcelable(PerformanceFlags.class.getClassLoader());
Packit Service 5a9772
		advancedSettings = parcel.readParcelable(AdvancedSettings.class.getClassLoader());
Packit Service 5a9772
		debugSettings = parcel.readParcelable(DebugSettings.class.getClassLoader());
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public BookmarkBase()
Packit Service 5a9772
	{
Packit Service 5a9772
		init();
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	private void init()
Packit Service 5a9772
	{
Packit Service 5a9772
		type = TYPE_INVALID;
Packit Service 5a9772
		id = -1;
Packit Service 5a9772
		label = "";
Packit Service 5a9772
		username = "";
Packit Service 5a9772
		password = "";
Packit Service 5a9772
		domain = "";
Packit Service 5a9772
Packit Service 5a9772
		screenSettings = new ScreenSettings();
Packit Service 5a9772
		performanceFlags = new PerformanceFlags();
Packit Service 5a9772
		advancedSettings = new AdvancedSettings();
Packit Service 5a9772
		debugSettings = new DebugSettings();
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	@SuppressWarnings("unchecked") public <T extends BookmarkBase> T get()
Packit Service 5a9772
	{
Packit Service 5a9772
		return (T)this;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public int getType()
Packit Service 5a9772
	{
Packit Service 5a9772
		return type;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public long getId()
Packit Service 5a9772
	{
Packit Service 5a9772
		return id;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public void setId(long id)
Packit Service 5a9772
	{
Packit Service 5a9772
		this.id = id;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public String getLabel()
Packit Service 5a9772
	{
Packit Service 5a9772
		return label;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public void setLabel(String label)
Packit Service 5a9772
	{
Packit Service 5a9772
		this.label = label;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public String getUsername()
Packit Service 5a9772
	{
Packit Service 5a9772
		return username;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public void setUsername(String username)
Packit Service 5a9772
	{
Packit Service 5a9772
		this.username = username;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public String getPassword()
Packit Service 5a9772
	{
Packit Service 5a9772
		return password;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public void setPassword(String password)
Packit Service 5a9772
	{
Packit Service 5a9772
		this.password = password;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public String getDomain()
Packit Service 5a9772
	{
Packit Service 5a9772
		return domain;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public void setDomain(String domain)
Packit Service 5a9772
	{
Packit Service 5a9772
		this.domain = domain;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public ScreenSettings getScreenSettings()
Packit Service 5a9772
	{
Packit Service 5a9772
		return screenSettings;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public void setScreenSettings(ScreenSettings screenSettings)
Packit Service 5a9772
	{
Packit Service 5a9772
		this.screenSettings = screenSettings;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public PerformanceFlags getPerformanceFlags()
Packit Service 5a9772
	{
Packit Service 5a9772
		return performanceFlags;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public void setPerformanceFlags(PerformanceFlags performanceFlags)
Packit Service 5a9772
	{
Packit Service 5a9772
		this.performanceFlags = performanceFlags;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public AdvancedSettings getAdvancedSettings()
Packit Service 5a9772
	{
Packit Service 5a9772
		return advancedSettings;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public void setAdvancedSettings(AdvancedSettings advancedSettings)
Packit Service 5a9772
	{
Packit Service 5a9772
		this.advancedSettings = advancedSettings;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public DebugSettings getDebugSettings()
Packit Service 5a9772
	{
Packit Service 5a9772
		return debugSettings;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public void setDebugSettings(DebugSettings debugSettings)
Packit Service 5a9772
	{
Packit Service 5a9772
		this.debugSettings = debugSettings;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public ScreenSettings getActiveScreenSettings()
Packit Service 5a9772
	{
Packit Service 5a9772
		return (GlobalApp.ConnectedTo3G && advancedSettings.getEnable3GSettings())
Packit Service 5a9772
		    ? advancedSettings.getScreen3G()
Packit Service 5a9772
		    : screenSettings;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public PerformanceFlags getActivePerformanceFlags()
Packit Service 5a9772
	{
Packit Service 5a9772
		return (GlobalApp.ConnectedTo3G && advancedSettings.getEnable3GSettings())
Packit Service 5a9772
		    ? advancedSettings.getPerformance3G()
Packit Service 5a9772
		    : performanceFlags;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	@Override public int describeContents()
Packit Service 5a9772
	{
Packit Service 5a9772
		return 0;
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	@Override public void writeToParcel(Parcel out, int flags)
Packit Service 5a9772
	{
Packit Service 5a9772
		out.writeInt(type);
Packit Service 5a9772
		out.writeLong(id);
Packit Service 5a9772
		out.writeString(label);
Packit Service 5a9772
		out.writeString(username);
Packit Service 5a9772
		out.writeString(password);
Packit Service 5a9772
		out.writeString(domain);
Packit Service 5a9772
Packit Service 5a9772
		out.writeParcelable(screenSettings, flags);
Packit Service 5a9772
		out.writeParcelable(performanceFlags, flags);
Packit Service 5a9772
		out.writeParcelable(advancedSettings, flags);
Packit Service 5a9772
		out.writeParcelable(debugSettings, flags);
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	// write to shared preferences
Packit Service 5a9772
	public void writeToSharedPreferences(SharedPreferences sharedPrefs)
Packit Service 5a9772
	{
Packit Service 5a9772
Packit Service 5a9772
		Locale locale = Locale.ENGLISH;
Packit Service 5a9772
Packit Service 5a9772
		SharedPreferences.Editor editor = sharedPrefs.edit();
Packit Service 5a9772
		editor.clear();
Packit Service 5a9772
		editor.putString("bookmark.label", label);
Packit Service 5a9772
		editor.putString("bookmark.username", username);
Packit Service 5a9772
		editor.putString("bookmark.password", password);
Packit Service 5a9772
		editor.putString("bookmark.domain", domain);
Packit Service 5a9772
Packit Service 5a9772
		editor.putInt("bookmark.colors", screenSettings.getColors());
Packit Service 5a9772
		editor.putString("bookmark.resolution",
Packit Service 5a9772
		                 screenSettings.getResolutionString().toLowerCase(locale));
Packit Service 5a9772
		editor.putInt("bookmark.width", screenSettings.getWidth());
Packit Service 5a9772
		editor.putInt("bookmark.height", screenSettings.getHeight());
Packit Service 5a9772
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_remotefx", performanceFlags.getRemoteFX());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_gfx", performanceFlags.getGfx());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_gfx_h264", performanceFlags.getH264());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_wallpaper", performanceFlags.getWallpaper());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_font_smoothing", performanceFlags.getFontSmoothing());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_desktop_composition",
Packit Service 5a9772
		                  performanceFlags.getDesktopComposition());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_window_dragging", performanceFlags.getFullWindowDrag());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_menu_animation", performanceFlags.getMenuAnimations());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_themes", performanceFlags.getTheming());
Packit Service 5a9772
Packit Service 5a9772
		editor.putBoolean("bookmark.enable_3g_settings", advancedSettings.getEnable3GSettings());
Packit Service 5a9772
Packit Service 5a9772
		editor.putInt("bookmark.colors_3g", advancedSettings.getScreen3G().getColors());
Packit Service 5a9772
		editor.putString("bookmark.resolution_3g",
Packit Service 5a9772
		                 advancedSettings.getScreen3G().getResolutionString().toLowerCase(locale));
Packit Service 5a9772
		editor.putInt("bookmark.width_3g", advancedSettings.getScreen3G().getWidth());
Packit Service 5a9772
		editor.putInt("bookmark.height_3g", advancedSettings.getScreen3G().getHeight());
Packit Service 5a9772
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_remotefx_3g",
Packit Service 5a9772
		                  advancedSettings.getPerformance3G().getRemoteFX());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_gfx_3g", advancedSettings.getPerformance3G().getGfx());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_gfx_h264_3g",
Packit Service 5a9772
		                  advancedSettings.getPerformance3G().getH264());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_wallpaper_3g",
Packit Service 5a9772
		                  advancedSettings.getPerformance3G().getWallpaper());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_font_smoothing_3g",
Packit Service 5a9772
		                  advancedSettings.getPerformance3G().getFontSmoothing());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_desktop_composition_3g",
Packit Service 5a9772
		                  advancedSettings.getPerformance3G().getDesktopComposition());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_window_dragging_3g",
Packit Service 5a9772
		                  advancedSettings.getPerformance3G().getFullWindowDrag());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_menu_animation_3g",
Packit Service 5a9772
		                  advancedSettings.getPerformance3G().getMenuAnimations());
Packit Service 5a9772
		editor.putBoolean("bookmark.perf_themes_3g",
Packit Service 5a9772
		                  advancedSettings.getPerformance3G().getTheming());
Packit Service 5a9772
Packit Service 5a9772
		editor.putBoolean("bookmark.redirect_sdcard", advancedSettings.getRedirectSDCard());
Packit Service 5a9772
		editor.putInt("bookmark.redirect_sound", advancedSettings.getRedirectSound());
Packit Service 5a9772
		editor.putBoolean("bookmark.redirect_microphone", advancedSettings.getRedirectMicrophone());
Packit Service 5a9772
		editor.putInt("bookmark.security", advancedSettings.getSecurity());
Packit Service 5a9772
		editor.putString("bookmark.remote_program", advancedSettings.getRemoteProgram());
Packit Service 5a9772
		editor.putString("bookmark.work_dir", advancedSettings.getWorkDir());
Packit Service 5a9772
		editor.putBoolean("bookmark.console_mode", advancedSettings.getConsoleMode());
Packit Service 5a9772
Packit Service 5a9772
		editor.putBoolean("bookmark.async_channel", debugSettings.getAsyncChannel());
Packit Service 5a9772
		editor.putBoolean("bookmark.async_input", debugSettings.getAsyncInput());
Packit Service 5a9772
		editor.putBoolean("bookmark.async_update", debugSettings.getAsyncUpdate());
Packit Service 5a9772
		editor.putString("bookmark.debug_level", debugSettings.getDebugLevel());
Packit Service 5a9772
Packit Service 5a9772
		editor.apply();
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	// read from shared preferences
Packit Service 5a9772
	public void readFromSharedPreferences(SharedPreferences sharedPrefs)
Packit Service 5a9772
	{
Packit Service 5a9772
		label = sharedPrefs.getString("bookmark.label", "");
Packit Service 5a9772
		username = sharedPrefs.getString("bookmark.username", "");
Packit Service 5a9772
		password = sharedPrefs.getString("bookmark.password", "");
Packit Service 5a9772
		domain = sharedPrefs.getString("bookmark.domain", "");
Packit Service 5a9772
Packit Service 5a9772
		screenSettings.setColors(sharedPrefs.getInt("bookmark.colors", 16));
Packit Service 5a9772
		screenSettings.setResolution(sharedPrefs.getString("bookmark.resolution", "automatic"),
Packit Service 5a9772
		                             sharedPrefs.getInt("bookmark.width", 800),
Packit Service 5a9772
		                             sharedPrefs.getInt("bookmark.height", 600));
Packit Service 5a9772
Packit Service 5a9772
		performanceFlags.setRemoteFX(sharedPrefs.getBoolean("bookmark.perf_remotefx", false));
Packit Service 5a9772
		performanceFlags.setGfx(sharedPrefs.getBoolean("bookmark.perf_gfx", false));
Packit Service 5a9772
		performanceFlags.setH264(sharedPrefs.getBoolean("bookmark.perf_gfx_h264", false));
Packit Service 5a9772
		performanceFlags.setWallpaper(sharedPrefs.getBoolean("bookmark.perf_wallpaper", false));
Packit Service 5a9772
		performanceFlags.setFontSmoothing(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.perf_font_smoothing", false));
Packit Service 5a9772
		performanceFlags.setDesktopComposition(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.perf_desktop_composition", false));
Packit Service 5a9772
		performanceFlags.setFullWindowDrag(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.perf_window_dragging", false));
Packit Service 5a9772
		performanceFlags.setMenuAnimations(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.perf_menu_animation", false));
Packit Service 5a9772
		performanceFlags.setTheming(sharedPrefs.getBoolean("bookmark.perf_themes", false));
Packit Service 5a9772
Packit Service 5a9772
		advancedSettings.setEnable3GSettings(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.enable_3g_settings", false));
Packit Service 5a9772
Packit Service 5a9772
		advancedSettings.getScreen3G().setColors(sharedPrefs.getInt("bookmark.colors_3g", 16));
Packit Service 5a9772
		advancedSettings.getScreen3G().setResolution(
Packit Service 5a9772
		    sharedPrefs.getString("bookmark.resolution_3g", "automatic"),
Packit Service 5a9772
		    sharedPrefs.getInt("bookmark.width_3g", 800),
Packit Service 5a9772
		    sharedPrefs.getInt("bookmark.height_3g", 600));
Packit Service 5a9772
Packit Service 5a9772
		advancedSettings.getPerformance3G().setRemoteFX(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.perf_remotefx_3g", false));
Packit Service 5a9772
		advancedSettings.getPerformance3G().setGfx(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.perf_gfx_3g", false));
Packit Service 5a9772
		advancedSettings.getPerformance3G().setH264(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.perf_gfx_h264_3g", false));
Packit Service 5a9772
		advancedSettings.getPerformance3G().setWallpaper(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.perf_wallpaper_3g", false));
Packit Service 5a9772
		advancedSettings.getPerformance3G().setFontSmoothing(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.perf_font_smoothing_3g", false));
Packit Service 5a9772
		advancedSettings.getPerformance3G().setDesktopComposition(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.perf_desktop_composition_3g", false));
Packit Service 5a9772
		advancedSettings.getPerformance3G().setFullWindowDrag(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.perf_window_dragging_3g", false));
Packit Service 5a9772
		advancedSettings.getPerformance3G().setMenuAnimations(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.perf_menu_animation_3g", false));
Packit Service 5a9772
		advancedSettings.getPerformance3G().setTheming(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.perf_themes_3g", false));
Packit Service 5a9772
Packit Service 5a9772
		advancedSettings.setRedirectSDCard(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.redirect_sdcard", false));
Packit Service 5a9772
		advancedSettings.setRedirectSound(sharedPrefs.getInt("bookmark.redirect_sound", 0));
Packit Service 5a9772
		advancedSettings.setRedirectMicrophone(
Packit Service 5a9772
		    sharedPrefs.getBoolean("bookmark.redirect_microphone", false));
Packit Service 5a9772
		advancedSettings.setSecurity(sharedPrefs.getInt("bookmark.security", 0));
Packit Service 5a9772
		advancedSettings.setRemoteProgram(sharedPrefs.getString("bookmark.remote_program", ""));
Packit Service 5a9772
		advancedSettings.setWorkDir(sharedPrefs.getString("bookmark.work_dir", ""));
Packit Service 5a9772
		advancedSettings.setConsoleMode(sharedPrefs.getBoolean("bookmark.console_mode", false));
Packit Service 5a9772
Packit Service 5a9772
		debugSettings.setAsyncChannel(sharedPrefs.getBoolean("bookmark.async_channel", true));
Packit Service 5a9772
		debugSettings.setAsyncInput(sharedPrefs.getBoolean("bookmark.async_input", true));
Packit Service 5a9772
		debugSettings.setAsyncUpdate(sharedPrefs.getBoolean("bookmark.async_update", true));
Packit Service 5a9772
		debugSettings.setDebugLevel(sharedPrefs.getString("bookmark.debug_level", "INFO"));
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	// Cloneable
Packit Service 5a9772
	public Object clone()
Packit Service 5a9772
	{
Packit Service 5a9772
		try
Packit Service 5a9772
		{
Packit Service 5a9772
			return super.clone();
Packit Service 5a9772
		}
Packit Service 5a9772
		catch (CloneNotSupportedException e)
Packit Service 5a9772
		{
Packit Service 5a9772
			return null;
Packit Service 5a9772
		}
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	// performance flags
Packit Service 5a9772
	public static class PerformanceFlags implements Parcelable
Packit Service 5a9772
	{
Packit Service 5a9772
		public static final Parcelable.Creator<PerformanceFlags> CREATOR =
Packit Service 5a9772
		    new Parcelable.Creator<PerformanceFlags>() {
Packit Service 5a9772
			    public PerformanceFlags createFromParcel(Parcel in)
Packit Service 5a9772
			    {
Packit Service 5a9772
				    return new PerformanceFlags(in);
Packit Service 5a9772
			    }
Packit Service 5a9772
Packit Service 5a9772
			    @Override public PerformanceFlags[] newArray(int size)
Packit Service 5a9772
			    {
Packit Service 5a9772
				    return new PerformanceFlags[size];
Packit Service 5a9772
			    }
Packit Service 5a9772
		    };
Packit Service 5a9772
		private boolean remotefx;
Packit Service 5a9772
		private boolean gfx;
Packit Service 5a9772
		private boolean h264;
Packit Service 5a9772
		private boolean wallpaper;
Packit Service 5a9772
		private boolean theming;
Packit Service 5a9772
		private boolean fullWindowDrag;
Packit Service 5a9772
		private boolean menuAnimations;
Packit Service 5a9772
		private boolean fontSmoothing;
Packit Service 5a9772
		private boolean desktopComposition;
Packit Service 5a9772
Packit Service 5a9772
		public PerformanceFlags()
Packit Service 5a9772
		{
Packit Service 5a9772
			remotefx = false;
Packit Service 5a9772
			gfx = false;
Packit Service 5a9772
			h264 = false;
Packit Service 5a9772
			wallpaper = false;
Packit Service 5a9772
			theming = false;
Packit Service 5a9772
			fullWindowDrag = false;
Packit Service 5a9772
			menuAnimations = false;
Packit Service 5a9772
			fontSmoothing = false;
Packit Service 5a9772
			desktopComposition = false;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public PerformanceFlags(Parcel parcel)
Packit Service 5a9772
		{
Packit Service 5a9772
			remotefx = parcel.readInt() == 1;
Packit Service 5a9772
			gfx = parcel.readInt() == 1;
Packit Service 5a9772
			h264 = parcel.readInt() == 1;
Packit Service 5a9772
			wallpaper = parcel.readInt() == 1;
Packit Service 5a9772
			theming = parcel.readInt() == 1;
Packit Service 5a9772
			fullWindowDrag = (parcel.readInt() == 1);
Packit Service 5a9772
			menuAnimations = parcel.readInt() == 1;
Packit Service 5a9772
			fontSmoothing = parcel.readInt() == 1;
Packit Service 5a9772
			desktopComposition = parcel.readInt() == 1;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getRemoteFX()
Packit Service 5a9772
		{
Packit Service 5a9772
			return remotefx;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setRemoteFX(boolean remotefx)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.remotefx = remotefx;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getGfx()
Packit Service 5a9772
		{
Packit Service 5a9772
			return gfx;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setGfx(boolean gfx)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.gfx = gfx;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getH264()
Packit Service 5a9772
		{
Packit Service 5a9772
			return h264;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setH264(boolean h264)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.h264 = h264;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getWallpaper()
Packit Service 5a9772
		{
Packit Service 5a9772
			return wallpaper;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setWallpaper(boolean wallpaper)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.wallpaper = wallpaper;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getTheming()
Packit Service 5a9772
		{
Packit Service 5a9772
			return theming;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setTheming(boolean theming)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.theming = theming;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getFullWindowDrag()
Packit Service 5a9772
		{
Packit Service 5a9772
			return fullWindowDrag;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setFullWindowDrag(boolean fullWindowDrag)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.fullWindowDrag = fullWindowDrag;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getMenuAnimations()
Packit Service 5a9772
		{
Packit Service 5a9772
			return menuAnimations;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setMenuAnimations(boolean menuAnimations)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.menuAnimations = menuAnimations;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getFontSmoothing()
Packit Service 5a9772
		{
Packit Service 5a9772
			return fontSmoothing;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setFontSmoothing(boolean fontSmoothing)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.fontSmoothing = fontSmoothing;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getDesktopComposition()
Packit Service 5a9772
		{
Packit Service 5a9772
			return desktopComposition;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setDesktopComposition(boolean desktopComposition)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.desktopComposition = desktopComposition;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		@Override public int describeContents()
Packit Service 5a9772
		{
Packit Service 5a9772
			return 0;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		@Override public void writeToParcel(Parcel out, int flags)
Packit Service 5a9772
		{
Packit Service 5a9772
			out.writeInt(remotefx ? 1 : 0);
Packit Service 5a9772
			out.writeInt(gfx ? 1 : 0);
Packit Service 5a9772
			out.writeInt(h264 ? 1 : 0);
Packit Service 5a9772
			out.writeInt(wallpaper ? 1 : 0);
Packit Service 5a9772
			out.writeInt(theming ? 1 : 0);
Packit Service 5a9772
			out.writeInt(fullWindowDrag ? 1 : 0);
Packit Service 5a9772
			out.writeInt(menuAnimations ? 1 : 0);
Packit Service 5a9772
			out.writeInt(fontSmoothing ? 1 : 0);
Packit Service 5a9772
			out.writeInt(desktopComposition ? 1 : 0);
Packit Service 5a9772
		}
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	// Screen Settings class
Packit Service 5a9772
	public static class ScreenSettings implements Parcelable
Packit Service 5a9772
	{
Packit Service 5a9772
		public static final int FITSCREEN = -2;
Packit Service 5a9772
		public static final int AUTOMATIC = -1;
Packit Service 5a9772
		public static final int CUSTOM = 0;
Packit Service 5a9772
		public static final int PREDEFINED = 1;
Packit Service 5a9772
		public static final Parcelable.Creator<ScreenSettings> CREATOR =
Packit Service 5a9772
		    new Parcelable.Creator<ScreenSettings>() {
Packit Service 5a9772
			    public ScreenSettings createFromParcel(Parcel in)
Packit Service 5a9772
			    {
Packit Service 5a9772
				    return new ScreenSettings(in);
Packit Service 5a9772
			    }
Packit Service 5a9772
Packit Service 5a9772
			    @Override public ScreenSettings[] newArray(int size)
Packit Service 5a9772
			    {
Packit Service 5a9772
				    return new ScreenSettings[size];
Packit Service 5a9772
			    }
Packit Service 5a9772
		    };
Packit Service 5a9772
		private int resolution;
Packit Service 5a9772
		private int colors;
Packit Service 5a9772
		private int width;
Packit Service 5a9772
		private int height;
Packit Service 5a9772
Packit Service 5a9772
		public ScreenSettings()
Packit Service 5a9772
		{
Packit Service 5a9772
			init();
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public ScreenSettings(Parcel parcel)
Packit Service 5a9772
		{
Packit Service 5a9772
			resolution = parcel.readInt();
Packit Service 5a9772
			colors = parcel.readInt();
Packit Service 5a9772
			width = parcel.readInt();
Packit Service 5a9772
			height = parcel.readInt();
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		private void validate()
Packit Service 5a9772
		{
Packit Service 5a9772
			switch (colors)
Packit Service 5a9772
			{
Packit Service 5a9772
				case 32:
Packit Service 5a9772
				case 24:
Packit Service 5a9772
				case 16:
Packit Service 5a9772
				case 15:
Packit Service 5a9772
				case 8:
Packit Service 5a9772
					break;
Packit Service 5a9772
				default:
Packit Service 5a9772
					colors = 32;
Packit Service 5a9772
					break;
Packit Service 5a9772
			}
Packit Service 5a9772
Packit Service 5a9772
			if ((width <= 0) || (width > 65536))
Packit Service 5a9772
			{
Packit Service 5a9772
				width = 1024;
Packit Service 5a9772
			}
Packit Service 5a9772
Packit Service 5a9772
			if ((height <= 0) || (height > 65536))
Packit Service 5a9772
			{
Packit Service 5a9772
				height = 768;
Packit Service 5a9772
			}
Packit Service 5a9772
Packit Service 5a9772
			switch (resolution)
Packit Service 5a9772
			{
Packit Service 5a9772
				case FITSCREEN:
Packit Service 5a9772
				case AUTOMATIC:
Packit Service 5a9772
				case CUSTOM:
Packit Service 5a9772
				case PREDEFINED:
Packit Service 5a9772
					break;
Packit Service 5a9772
				default:
Packit Service 5a9772
					resolution = AUTOMATIC;
Packit Service 5a9772
					break;
Packit Service 5a9772
			}
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		private void init()
Packit Service 5a9772
		{
Packit Service 5a9772
			resolution = AUTOMATIC;
Packit Service 5a9772
			colors = 16;
Packit Service 5a9772
			width = 0;
Packit Service 5a9772
			height = 0;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setResolution(String resolution, int width, int height)
Packit Service 5a9772
		{
Packit Service 5a9772
			if (resolution.contains("x"))
Packit Service 5a9772
			{
Packit Service 5a9772
				String[] dimensions = resolution.split("x");
Packit Service 5a9772
				this.width = Integer.valueOf(dimensions[0]);
Packit Service 5a9772
				this.height = Integer.valueOf(dimensions[1]);
Packit Service 5a9772
				this.resolution = PREDEFINED;
Packit Service 5a9772
			}
Packit Service 5a9772
			else if (resolution.equalsIgnoreCase("custom"))
Packit Service 5a9772
			{
Packit Service 5a9772
				this.width = width;
Packit Service 5a9772
				this.height = height;
Packit Service 5a9772
				this.resolution = CUSTOM;
Packit Service 5a9772
			}
Packit Service 5a9772
			else if (resolution.equalsIgnoreCase("fitscreen"))
Packit Service 5a9772
			{
Packit Service 5a9772
				this.width = this.height = 0;
Packit Service 5a9772
				this.resolution = FITSCREEN;
Packit Service 5a9772
			}
Packit Service 5a9772
			else
Packit Service 5a9772
			{
Packit Service 5a9772
				this.width = this.height = 0;
Packit Service 5a9772
				this.resolution = AUTOMATIC;
Packit Service 5a9772
			}
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public int getResolution()
Packit Service 5a9772
		{
Packit Service 5a9772
			return resolution;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setResolution(int resolution)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.resolution = resolution;
Packit Service 5a9772
Packit Service 5a9772
			if (resolution == AUTOMATIC || resolution == FITSCREEN)
Packit Service 5a9772
			{
Packit Service 5a9772
				width = 0;
Packit Service 5a9772
				height = 0;
Packit Service 5a9772
			}
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public String getResolutionString()
Packit Service 5a9772
		{
Packit Service 5a9772
			if (isPredefined())
Packit Service 5a9772
				return (width + "x" + height);
Packit Service 5a9772
Packit Service 5a9772
			return (isFitScreen() ? "fitscreen" : isAutomatic() ? "automatic" : "custom");
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean isPredefined()
Packit Service 5a9772
		{
Packit Service 5a9772
			validate();
Packit Service 5a9772
			return (resolution == PREDEFINED);
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean isAutomatic()
Packit Service 5a9772
		{
Packit Service 5a9772
			validate();
Packit Service 5a9772
			return (resolution == AUTOMATIC);
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean isFitScreen()
Packit Service 5a9772
		{
Packit Service 5a9772
			validate();
Packit Service 5a9772
			return (resolution == FITSCREEN);
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean isCustom()
Packit Service 5a9772
		{
Packit Service 5a9772
			validate();
Packit Service 5a9772
			return (resolution == CUSTOM);
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public int getWidth()
Packit Service 5a9772
		{
Packit Service 5a9772
			validate();
Packit Service 5a9772
			return width;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setWidth(int width)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.width = width;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public int getHeight()
Packit Service 5a9772
		{
Packit Service 5a9772
			validate();
Packit Service 5a9772
			return height;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setHeight(int height)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.height = height;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public int getColors()
Packit Service 5a9772
		{
Packit Service 5a9772
			validate();
Packit Service 5a9772
			return colors;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setColors(int colors)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.colors = colors;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		@Override public int describeContents()
Packit Service 5a9772
		{
Packit Service 5a9772
			return 0;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		@Override public void writeToParcel(Parcel out, int flags)
Packit Service 5a9772
		{
Packit Service 5a9772
			out.writeInt(resolution);
Packit Service 5a9772
			out.writeInt(colors);
Packit Service 5a9772
			out.writeInt(width);
Packit Service 5a9772
			out.writeInt(height);
Packit Service 5a9772
		}
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	public static class DebugSettings implements Parcelable
Packit Service 5a9772
	{
Packit Service 5a9772
Packit Service 5a9772
		public static final Parcelable.Creator<DebugSettings> CREATOR =
Packit Service 5a9772
		    new Parcelable.Creator<DebugSettings>() {
Packit Service 5a9772
			    public DebugSettings createFromParcel(Parcel in)
Packit Service 5a9772
			    {
Packit Service 5a9772
				    return new DebugSettings(in);
Packit Service 5a9772
			    }
Packit Service 5a9772
Packit Service 5a9772
			    @Override public DebugSettings[] newArray(int size)
Packit Service 5a9772
			    {
Packit Service 5a9772
				    return new DebugSettings[size];
Packit Service 5a9772
			    }
Packit Service 5a9772
		    };
Packit Service 5a9772
		private String debug;
Packit Service 5a9772
		private boolean asyncChannel;
Packit Service 5a9772
		private boolean asyncTransport;
Packit Service 5a9772
		private boolean asyncInput;
Packit Service 5a9772
		private boolean asyncUpdate;
Packit Service 5a9772
Packit Service 5a9772
		public DebugSettings()
Packit Service 5a9772
		{
Packit Service 5a9772
			init();
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		// Session Settings
Packit Service 5a9772
		public DebugSettings(Parcel parcel)
Packit Service 5a9772
		{
Packit Service 5a9772
			asyncChannel = parcel.readInt() == 1;
Packit Service 5a9772
			asyncTransport = parcel.readInt() == 1;
Packit Service 5a9772
			asyncInput = parcel.readInt() == 1;
Packit Service 5a9772
			asyncUpdate = parcel.readInt() == 1;
Packit Service 5a9772
			debug = parcel.readString();
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		private void init()
Packit Service 5a9772
		{
Packit Service 5a9772
			debug = "INFO";
Packit Service 5a9772
			asyncChannel = true;
Packit Service 5a9772
			asyncTransport = false;
Packit Service 5a9772
			asyncInput = true;
Packit Service 5a9772
			asyncUpdate = true;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		private void validate()
Packit Service 5a9772
		{
Packit Service 5a9772
			final String[] levels = { "OFF", "FATAL", "ERROR", "WARN", "INFO", "DEBUG", "TRACE" };
Packit Service 5a9772
Packit Service 5a9772
			for (String level : levels)
Packit Service 5a9772
			{
Packit Service 5a9772
				if (level.equalsIgnoreCase(this.debug))
Packit Service 5a9772
				{
Packit Service 5a9772
					return;
Packit Service 5a9772
				}
Packit Service 5a9772
			}
Packit Service 5a9772
Packit Service 5a9772
			this.debug = "INFO";
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public String getDebugLevel()
Packit Service 5a9772
		{
Packit Service 5a9772
			validate();
Packit Service 5a9772
			return debug;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setDebugLevel(String debug)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.debug = debug;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getAsyncUpdate()
Packit Service 5a9772
		{
Packit Service 5a9772
			return asyncUpdate;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setAsyncUpdate(boolean enabled)
Packit Service 5a9772
		{
Packit Service 5a9772
			asyncUpdate = enabled;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getAsyncInput()
Packit Service 5a9772
		{
Packit Service 5a9772
			return asyncInput;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setAsyncInput(boolean enabled)
Packit Service 5a9772
		{
Packit Service 5a9772
			asyncInput = enabled;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getAsyncChannel()
Packit Service 5a9772
		{
Packit Service 5a9772
			return asyncChannel;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setAsyncChannel(boolean enabled)
Packit Service 5a9772
		{
Packit Service 5a9772
			asyncChannel = enabled;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		@Override public int describeContents()
Packit Service 5a9772
		{
Packit Service 5a9772
			return 0;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		@Override public void writeToParcel(Parcel out, int flags)
Packit Service 5a9772
		{
Packit Service 5a9772
			out.writeInt(asyncChannel ? 1 : 0);
Packit Service 5a9772
			out.writeInt(asyncTransport ? 1 : 0);
Packit Service 5a9772
			out.writeInt(asyncInput ? 1 : 0);
Packit Service 5a9772
			out.writeInt(asyncUpdate ? 1 : 0);
Packit Service 5a9772
			out.writeString(debug);
Packit Service 5a9772
		}
Packit Service 5a9772
	}
Packit Service 5a9772
Packit Service 5a9772
	// Session Settings
Packit Service 5a9772
	public static class AdvancedSettings implements Parcelable
Packit Service 5a9772
	{
Packit Service 5a9772
		public static final Parcelable.Creator<AdvancedSettings> CREATOR =
Packit Service 5a9772
		    new Parcelable.Creator<AdvancedSettings>() {
Packit Service 5a9772
			    public AdvancedSettings createFromParcel(Parcel in)
Packit Service 5a9772
			    {
Packit Service 5a9772
				    return new AdvancedSettings(in);
Packit Service 5a9772
			    }
Packit Service 5a9772
Packit Service 5a9772
			    @Override public AdvancedSettings[] newArray(int size)
Packit Service 5a9772
			    {
Packit Service 5a9772
				    return new AdvancedSettings[size];
Packit Service 5a9772
			    }
Packit Service 5a9772
		    };
Packit Service 5a9772
		private boolean enable3GSettings;
Packit Service 5a9772
		private ScreenSettings screen3G;
Packit Service 5a9772
		private PerformanceFlags performance3G;
Packit Service 5a9772
		private boolean redirectSDCard;
Packit Service 5a9772
		private int redirectSound;
Packit Service 5a9772
		private boolean redirectMicrophone;
Packit Service 5a9772
		private int security;
Packit Service 5a9772
		private boolean consoleMode;
Packit Service 5a9772
		private String remoteProgram;
Packit Service 5a9772
		private String workDir;
Packit Service 5a9772
Packit Service 5a9772
		public AdvancedSettings()
Packit Service 5a9772
		{
Packit Service 5a9772
			init();
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public AdvancedSettings(Parcel parcel)
Packit Service 5a9772
		{
Packit Service 5a9772
			enable3GSettings = parcel.readInt() == 1;
Packit Service 5a9772
			screen3G = parcel.readParcelable(ScreenSettings.class.getClassLoader());
Packit Service 5a9772
			performance3G = parcel.readParcelable(PerformanceFlags.class.getClassLoader());
Packit Service 5a9772
			redirectSDCard = parcel.readInt() == 1;
Packit Service 5a9772
			redirectSound = parcel.readInt();
Packit Service 5a9772
			redirectMicrophone = parcel.readInt() == 1;
Packit Service 5a9772
			security = parcel.readInt();
Packit Service 5a9772
			consoleMode = parcel.readInt() == 1;
Packit Service 5a9772
			remoteProgram = parcel.readString();
Packit Service 5a9772
			workDir = parcel.readString();
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		private void init()
Packit Service 5a9772
		{
Packit Service 5a9772
			enable3GSettings = false;
Packit Service 5a9772
			screen3G = new ScreenSettings();
Packit Service 5a9772
			performance3G = new PerformanceFlags();
Packit Service 5a9772
			redirectSDCard = false;
Packit Service 5a9772
			redirectSound = 0;
Packit Service 5a9772
			redirectMicrophone = false;
Packit Service 5a9772
			security = 0;
Packit Service 5a9772
			consoleMode = false;
Packit Service 5a9772
			remoteProgram = "";
Packit Service 5a9772
			workDir = "";
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		private void validate()
Packit Service 5a9772
		{
Packit Service 5a9772
			switch (redirectSound)
Packit Service 5a9772
			{
Packit Service 5a9772
				case 0:
Packit Service 5a9772
				case 1:
Packit Service 5a9772
				case 2:
Packit Service 5a9772
					break;
Packit Service 5a9772
				default:
Packit Service 5a9772
					redirectSound = 0;
Packit Service 5a9772
					break;
Packit Service 5a9772
			}
Packit Service 5a9772
Packit Service 5a9772
			switch (security)
Packit Service 5a9772
			{
Packit Service 5a9772
				case 0:
Packit Service 5a9772
				case 1:
Packit Service 5a9772
				case 2:
Packit Service 5a9772
				case 3:
Packit Service 5a9772
					break;
Packit Service 5a9772
				default:
Packit Service 5a9772
					security = 0;
Packit Service 5a9772
					break;
Packit Service 5a9772
			}
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getEnable3GSettings()
Packit Service 5a9772
		{
Packit Service 5a9772
			return enable3GSettings;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setEnable3GSettings(boolean enable3GSettings)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.enable3GSettings = enable3GSettings;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public ScreenSettings getScreen3G()
Packit Service 5a9772
		{
Packit Service 5a9772
			return screen3G;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setScreen3G(ScreenSettings screen3G)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.screen3G = screen3G;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public PerformanceFlags getPerformance3G()
Packit Service 5a9772
		{
Packit Service 5a9772
			return performance3G;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setPerformance3G(PerformanceFlags performance3G)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.performance3G = performance3G;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getRedirectSDCard()
Packit Service 5a9772
		{
Packit Service 5a9772
			return redirectSDCard;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setRedirectSDCard(boolean redirectSDCard)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.redirectSDCard = redirectSDCard;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public int getRedirectSound()
Packit Service 5a9772
		{
Packit Service 5a9772
			validate();
Packit Service 5a9772
			return redirectSound;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setRedirectSound(int redirect)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.redirectSound = redirect;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getRedirectMicrophone()
Packit Service 5a9772
		{
Packit Service 5a9772
			return redirectMicrophone;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setRedirectMicrophone(boolean redirect)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.redirectMicrophone = redirect;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public int getSecurity()
Packit Service 5a9772
		{
Packit Service 5a9772
			validate();
Packit Service 5a9772
			return security;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setSecurity(int security)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.security = security;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public boolean getConsoleMode()
Packit Service 5a9772
		{
Packit Service 5a9772
			return consoleMode;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setConsoleMode(boolean consoleMode)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.consoleMode = consoleMode;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public String getRemoteProgram()
Packit Service 5a9772
		{
Packit Service 5a9772
			return remoteProgram;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setRemoteProgram(String remoteProgram)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.remoteProgram = remoteProgram;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public String getWorkDir()
Packit Service 5a9772
		{
Packit Service 5a9772
			return workDir;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		public void setWorkDir(String workDir)
Packit Service 5a9772
		{
Packit Service 5a9772
			this.workDir = workDir;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		@Override public int describeContents()
Packit Service 5a9772
		{
Packit Service 5a9772
			return 0;
Packit Service 5a9772
		}
Packit Service 5a9772
Packit Service 5a9772
		@Override public void writeToParcel(Parcel out, int flags)
Packit Service 5a9772
		{
Packit Service 5a9772
			out.writeInt(enable3GSettings ? 1 : 0);
Packit Service 5a9772
			out.writeParcelable(screen3G, flags);
Packit Service 5a9772
			out.writeParcelable(performance3G, flags);
Packit Service 5a9772
			out.writeInt(redirectSDCard ? 1 : 0);
Packit Service 5a9772
			out.writeInt(redirectSound);
Packit Service 5a9772
			out.writeInt(redirectMicrophone ? 1 : 0);
Packit Service 5a9772
			out.writeInt(security);
Packit Service 5a9772
			out.writeInt(consoleMode ? 1 : 0);
Packit Service 5a9772
			out.writeString(remoteProgram);
Packit Service 5a9772
			out.writeString(workDir);
Packit Service 5a9772
		}
Packit Service 5a9772
	}
Packit 1fb8d4
}