24 private static final String keyLabel =
"bookmark.label";
25 private static final String keyUsername =
"bookmark.username";
26 private static final String keyPassword =
"bookmark.password";
27 private static final String keyDomain =
"bookmark.domain";
29 private static final String keyColors =
"bookmark.colors";
30 private static final String keyResolution =
"bookmark.resolution";
31 private static final String keyWidth =
"bookmark.width";
32 private static final String keyScaleMode =
"bookmark.scale_mode";
33 private static final String keyScaleDesktop =
"bookmark.scale_desktop";
34 private static final String keyScaleDevice =
"bookmark.scale_device";
35 private static final String keyHeight =
"bookmark.height";
37 private static final String keyRFX =
"bookmark.perf_remotefx";
38 private static final String keyGFX =
"bookmark.perf_gfx";
39 private static final String keyH264 =
"bookmark.perf_gfx_h264";
40 private static final String keyFlagWallpaper =
"bookmark.perf_wallpaper";
41 private static final String keyFlagFonts =
"bookmark.perf_font_smoothing";
42 private static final String keyFlagComposition =
"bookmark.perf_desktop_composition";
43 private static final String keyFlagWindowDrag =
"bookmark.perf_window_dragging";
44 private static final String keyFlagMenuAnim =
"bookmark.perf_menu_animation";
45 private static final String keyFlagTheming =
"bookmark.perf_themes";
47 private static final String keyTlsSecLevel =
"bookmark.tlsSecLevel";
48 private static final String keyTlsMinLevel =
"bookmark.tlsMinLevel";
49 private static final String keyLoadBalanceInfo =
"bookmark.loadBalanceInfo";
50 private static final String keyRedirectSDCard =
"bookmark.redirect_sdcard";
51 private static final String keySound =
"bookmark.redirect_sound";
52 private static final String keyMicrophone =
"bookmark.redirect_microphone";
53 private static final String keyCamera =
"bookmark.redirect_camera";
54 private static final String keyPrinter =
"bookmark.redirect_printer";
55 private static final String keySecurity =
"bookmark.security";
56 private static final String keyRemoteApp =
"bookmark.remote_program";
57 private static final String keyAlternateShell =
"bookmark.alternate_shell";
58 private static final String keyWorkDir =
"bookmark.work_dir";
59 private static final String keyConsoleMode =
"bookmark.console_mode";
60 private static final String keyVmConnectMode =
"bookmark.vmconnect_mode";
61 private static final String keyVmConnectGuid =
"bookmark.vmconnect_guid";
63 private static final String keyAsyncChannel =
"bookmark.async_channel";
64 private static final String keyAsyncUpdate =
"bookmark.async_update";
65 private static final String keyDebugLevel =
"bookmark.debug_level";
67 private static final String keyHostname =
"bookmark.hostname";
68 private static final String keyPort =
"bookmark.port";
69 private static final String keyGatewayEnabled =
"bookmark.enable_gateway_settings";
70 private static final String keyGatewayHostname =
"bookmark.gateway_hostname";
71 private static final String keyGatewayPort =
"bookmark.gateway_port";
72 private static final String keyGatewyUser =
"bookmark.gateway_username";
73 private static final String keyGatewayPassword =
"bookmark.gateway_password";
74 private static final String keyGatewayDomain =
"bookmark.gateway_domain";
76 public static final int TYPE_INVALID = -1;
77 public static final int TYPE_MANUAL = 1;
78 public static final int TYPE_QUICKCONNECT = 2;
79 public static final int TYPE_CUSTOM_BASE = 1000;
80 public static final Parcelable.Creator<
BookmarkBase> CREATOR =
92 protected int type = TYPE_MANUAL;
95 @NonNull
private String label =
"";
97 @NonNull
private String username =
"";
99 @NonNull
private String password =
"";
101 @NonNull
private String domain =
"";
111 @NonNull
private String hostname =
"";
112 private int port = 3389;
113 private boolean enableGatewaySettings =
false;
116 private boolean directConnect =
false;
120 type = parcel.readInt();
121 id = parcel.readLong();
122 label = Objects.requireNonNull(parcel.readString());
123 username = Objects.requireNonNull(parcel.readString());
124 password = Objects.requireNonNull(parcel.readString());
125 domain = Objects.requireNonNull(parcel.readString());
128 Objects.requireNonNull(parcel.readParcelable(
ScreenSettings.class.getClassLoader()));
130 Objects.requireNonNull(parcel.readParcelable(
PerformanceFlags.class.getClassLoader()));
132 Objects.requireNonNull(parcel.readParcelable(
AdvancedSettings.class.getClassLoader()));
134 Objects.requireNonNull(parcel.readParcelable(
DebugSettings.class.getClassLoader()));
135 hostname = Objects.requireNonNull(parcel.readString());
136 port = parcel.readInt();
137 enableGatewaySettings = (parcel.readInt() == 1);
139 Objects.requireNonNull(parcel.readParcelable(
GatewaySettings.class.getClassLoader()));
140 directConnect = (parcel.readInt() == 1);
152 public void setType(
int type)
162 public void setId(
long id)
167 @NonNull
public String getLabel()
172 public void setLabel(@NonNull String label)
177 @NonNull
public String getUsername()
182 public void setUsername(@NonNull String username)
184 this.username = username;
187 @NonNull
public String getPassword()
192 public void setPassword(@NonNull String password)
194 this.password = password;
197 @NonNull
public String getDomain()
202 public void setDomain(@NonNull String domain)
204 this.domain = domain;
209 return screenSettings;
214 return performanceFlags;
219 return advancedSettings;
224 return debugSettings;
227 @NonNull
public String getHostname()
232 public void setHostname(@NonNull String hostname)
234 this.hostname = hostname;
242 public void setPort(
int port)
247 public boolean getEnableGatewaySettings()
249 return enableGatewaySettings;
252 public void setEnableGatewaySettings(
boolean enableGatewaySettings)
254 this.enableGatewaySettings = enableGatewaySettings;
259 return gatewaySettings;
262 public boolean isDirectConnect()
264 return directConnect;
267 public void setDirectConnect(
boolean directConnect)
269 this.directConnect = directConnect;
274 return screenSettings;
279 return performanceFlags;
282 @Override
public int describeContents()
287 @Override
public void writeToParcel(Parcel out,
int flags)
291 out.writeString(label);
292 out.writeString(username);
293 out.writeString(password);
294 out.writeString(domain);
296 out.writeParcelable(screenSettings, flags);
297 out.writeParcelable(performanceFlags, flags);
298 out.writeParcelable(advancedSettings, flags);
299 out.writeParcelable(debugSettings, flags);
300 out.writeString(hostname);
302 out.writeBoolean(enableGatewaySettings);
303 out.writeParcelable(gatewaySettings, flags);
304 out.writeBoolean(directConnect);
308 public void writeToSharedPreferences(@NonNull SharedPreferences sharedPrefs)
310 Locale locale = Locale.ENGLISH;
312 SharedPreferences.Editor editor = sharedPrefs.edit();
314 editor.putString(keyLabel, label);
315 editor.putString(keyUsername, username);
316 editor.putString(keyPassword, password);
317 editor.putString(keyDomain, domain);
319 editor.putInt(keyColors, screenSettings.getColors());
320 editor.putString(keyResolution, screenSettings.getResolutionString().toLowerCase(locale));
321 editor.putInt(keyWidth, screenSettings.getWidth());
322 editor.putInt(keyHeight, screenSettings.getHeight());
323 editor.putString(keyScaleMode, screenSettings.getScaleMode());
324 editor.putInt(keyScaleDesktop, screenSettings.getScaleDesktop());
325 editor.putInt(keyScaleDevice, screenSettings.getScaleDevice());
327 editor.putBoolean(keyRFX, performanceFlags.getRemoteFX());
328 editor.putBoolean(keyGFX, performanceFlags.getGfx());
329 editor.putBoolean(keyH264, performanceFlags.getH264());
330 editor.putBoolean(keyFlagWallpaper, performanceFlags.getWallpaper());
331 editor.putBoolean(keyFlagFonts, performanceFlags.getFontSmoothing());
332 editor.putBoolean(keyFlagComposition, performanceFlags.getDesktopComposition());
333 editor.putBoolean(keyFlagWindowDrag, performanceFlags.getFullWindowDrag());
334 editor.putBoolean(keyFlagMenuAnim, performanceFlags.getMenuAnimations());
335 editor.putBoolean(keyFlagTheming, performanceFlags.getTheming());
337 editor.putInt(keyTlsSecLevel, advancedSettings.tlsSecLevel);
338 editor.putInt(keyTlsMinLevel, advancedSettings.tlsMinLevel);
340 editor.putString(keyLoadBalanceInfo, advancedSettings.getLoadBalanceInfo());
341 editor.putBoolean(keyRedirectSDCard, advancedSettings.getRedirectSDCard());
342 editor.putInt(keySound, advancedSettings.getRedirectSound());
343 editor.putBoolean(keyMicrophone, advancedSettings.getRedirectMicrophone());
344 editor.putBoolean(keyCamera, advancedSettings.getRedirectCamera());
345 editor.putBoolean(keyPrinter, advancedSettings.getRedirectPrinter());
346 editor.putInt(keySecurity, advancedSettings.getSecurity());
347 editor.putString(keyRemoteApp, advancedSettings.getRemoteProgram());
348 editor.putString(keyAlternateShell, advancedSettings.getAlternateShell());
349 editor.putString(keyWorkDir, advancedSettings.getWorkDir());
350 editor.putBoolean(keyConsoleMode, advancedSettings.getConsoleMode());
351 editor.putBoolean(keyVmConnectMode, advancedSettings.getVmConnectMode());
352 editor.putString(keyVmConnectGuid, advancedSettings.getVmConnectGuid());
354 editor.putBoolean(keyAsyncChannel, debugSettings.getAsyncChannel());
355 editor.putBoolean(keyAsyncUpdate, debugSettings.getAsyncUpdate());
356 editor.putString(keyDebugLevel, debugSettings.getDebugLevel());
358 editor.putString(keyHostname, hostname);
359 editor.putInt(keyPort, port);
360 editor.putBoolean(keyGatewayEnabled, enableGatewaySettings);
361 editor.putString(keyGatewayHostname, gatewaySettings.getHostname());
362 editor.putInt(keyGatewayPort, gatewaySettings.getPort());
363 editor.putString(keyGatewyUser, gatewaySettings.getUsername());
364 editor.putString(keyGatewayPassword, gatewaySettings.getPassword());
365 editor.putString(keyGatewayDomain, gatewaySettings.getDomain());
371 public void readFromSharedPreferences(@NonNull SharedPreferences sharedPrefs)
373 label = sharedPrefs.getString(keyLabel,
"");
374 username = sharedPrefs.getString(keyUsername,
"");
375 password = sharedPrefs.getString(keyPassword,
"");
376 domain = sharedPrefs.getString(keyDomain,
"");
378 screenSettings.setColors(sharedPrefs.getInt(keyColors, 32));
379 screenSettings.setResolution(sharedPrefs.getString(keyResolution,
"automatic"),
380 sharedPrefs.getInt(keyWidth, 800),
381 sharedPrefs.getInt(keyHeight, 600));
382 screenSettings.setScale(sharedPrefs.getString(keyScaleMode,
"100"),
383 sharedPrefs.getInt(keyScaleDesktop, 100),
384 sharedPrefs.getInt(keyScaleDevice, 100));
386 performanceFlags.setRemoteFX(sharedPrefs.getBoolean(keyRFX,
false));
387 performanceFlags.setGfx(sharedPrefs.getBoolean(keyGFX,
true));
388 performanceFlags.setH264(sharedPrefs.getBoolean(keyH264,
true));
389 performanceFlags.setWallpaper(sharedPrefs.getBoolean(keyFlagWallpaper,
false));
390 performanceFlags.setFontSmoothing(sharedPrefs.getBoolean(keyFlagFonts,
false));
391 performanceFlags.setDesktopComposition(sharedPrefs.getBoolean(keyFlagComposition,
false));
392 performanceFlags.setFullWindowDrag(sharedPrefs.getBoolean(keyFlagWindowDrag,
false));
393 performanceFlags.setMenuAnimations(sharedPrefs.getBoolean(keyFlagMenuAnim,
false));
394 performanceFlags.setTheming(sharedPrefs.getBoolean(keyFlagTheming,
false));
396 advancedSettings.setTlsSecLevel(sharedPrefs.getInt(keyTlsSecLevel, -1));
397 advancedSettings.setTlsMinLevel(sharedPrefs.getInt(keyTlsMinLevel, -1));
399 advancedSettings.setLoadBalanceInfo(sharedPrefs.getString(keyLoadBalanceInfo,
""));
400 advancedSettings.setRedirectSDCard(sharedPrefs.getBoolean(keyRedirectSDCard,
false));
401 advancedSettings.setRedirectSound(sharedPrefs.getInt(keySound, 0));
402 advancedSettings.setRedirectMicrophone(sharedPrefs.getBoolean(keyMicrophone,
false));
403 advancedSettings.setRedirectCamera(sharedPrefs.getBoolean(keyCamera,
false));
404 advancedSettings.setRedirectPrinter(sharedPrefs.getBoolean(keyPrinter,
false));
405 advancedSettings.setSecurity(sharedPrefs.getInt(keySecurity, 0));
406 advancedSettings.setRemoteProgram(sharedPrefs.getString(keyRemoteApp,
""));
407 advancedSettings.setAlternateShell(sharedPrefs.getString(keyAlternateShell,
""));
408 advancedSettings.setWorkDir(sharedPrefs.getString(keyWorkDir,
""));
409 advancedSettings.setConsoleMode(sharedPrefs.getBoolean(keyConsoleMode,
false));
410 advancedSettings.setVmConnectMode(sharedPrefs.getBoolean(keyVmConnectMode,
false));
411 advancedSettings.setVmConnectGuid(sharedPrefs.getString(keyVmConnectGuid,
""));
413 debugSettings.setAsyncChannel(sharedPrefs.getBoolean(keyAsyncChannel,
true));
414 debugSettings.setAsyncUpdate(sharedPrefs.getBoolean(keyAsyncUpdate,
true));
415 debugSettings.setDebugLevel(sharedPrefs.getString(keyDebugLevel,
"INFO"));
417 hostname = sharedPrefs.getString(keyHostname,
"");
418 port = sharedPrefs.getInt(keyPort, 3389);
419 enableGatewaySettings = sharedPrefs.getBoolean(keyGatewayEnabled,
false);
420 gatewaySettings.setHostname(sharedPrefs.getString(keyGatewayHostname,
""));
421 gatewaySettings.setPort(sharedPrefs.getInt(keyGatewayPort, 443));
422 gatewaySettings.setUsername(sharedPrefs.getString(keyGatewyUser,
""));
423 gatewaySettings.setPassword(sharedPrefs.getString(keyGatewayPassword,
""));
424 gatewaySettings.setDomain(sharedPrefs.getString(keyGatewayDomain,
""));
427 @Override
public Object clone()
throws CloneNotSupportedException
429 return super.clone();
447 private boolean remotefx =
true;
448 private boolean gfx =
true;
449 private boolean h264 =
true;
450 private boolean wallpaper =
true;
451 private boolean theming =
true;
452 private boolean fullWindowDrag =
true;
453 private boolean menuAnimations =
true;
454 private boolean fontSmoothing =
true;
455 private boolean desktopComposition =
true;
463 remotefx = parcel.readBoolean();
464 gfx = parcel.readBoolean();
465 h264 = parcel.readBoolean();
466 wallpaper = parcel.readBoolean();
467 theming = parcel.readBoolean();
468 fullWindowDrag = parcel.readBoolean();
469 menuAnimations = parcel.readBoolean();
470 fontSmoothing = parcel.readBoolean();
471 desktopComposition = parcel.readBoolean();
474 public boolean getRemoteFX()
479 public void setRemoteFX(
boolean remotefx)
481 this.remotefx = remotefx;
484 public boolean getGfx()
489 public void setGfx(
boolean gfx)
494 public boolean getH264()
499 public void setH264(
boolean h264)
504 public boolean getWallpaper()
509 public void setWallpaper(
boolean wallpaper)
511 this.wallpaper = wallpaper;
514 public boolean getTheming()
519 public void setTheming(
boolean theming)
521 this.theming = theming;
524 public boolean getFullWindowDrag()
526 return fullWindowDrag;
529 public void setFullWindowDrag(
boolean fullWindowDrag)
531 this.fullWindowDrag = fullWindowDrag;
534 public boolean getMenuAnimations()
536 return menuAnimations;
539 public void setMenuAnimations(
boolean menuAnimations)
541 this.menuAnimations = menuAnimations;
544 public boolean getFontSmoothing()
546 return fontSmoothing;
549 public void setFontSmoothing(
boolean fontSmoothing)
551 this.fontSmoothing = fontSmoothing;
554 public boolean getDesktopComposition()
556 return desktopComposition;
559 public void setDesktopComposition(
boolean desktopComposition)
561 this.desktopComposition = desktopComposition;
564 @Override
public int describeContents()
569 @Override
public void writeToParcel(@NonNull Parcel out,
int flags)
571 out.writeBoolean(remotefx);
572 out.writeBoolean(gfx);
573 out.writeBoolean(h264);
574 out.writeBoolean(wallpaper);
575 out.writeBoolean(theming);
576 out.writeBoolean(fullWindowDrag);
577 out.writeBoolean(menuAnimations);
578 out.writeBoolean(fontSmoothing);
579 out.writeBoolean(desktopComposition);
586 public static final int FITSCREEN = -2;
587 public static final int AUTOMATIC = -1;
588 public static final int CUSTOM = 0;
589 public static final int PREDEFINED = 1;
602 private int resolution = AUTOMATIC;
603 private int colors = 32;
604 private int width = 0;
605 private int height = 0;
606 private String scaleMode =
"100";
607 private int scaleDesktop = 100;
608 private int scaleDevice = 100;
616 resolution = parcel.readInt();
617 colors = parcel.readInt();
618 width = parcel.readInt();
619 height = parcel.readInt();
620 scaleMode = parcel.readString();
621 scaleDesktop = parcel.readInt();
622 scaleDevice = parcel.readInt();
625 private void validate()
640 if ((width <= 0) || (width > 65536))
645 if ((height <= 0) || (height > 65536))
658 resolution = AUTOMATIC;
663 public void setResolution(@NonNull String resolution,
int width,
int height)
665 if (resolution.contains(
"x"))
667 String[] dimensions = resolution.split(
"x");
668 this.width = Integer.parseInt(dimensions[0]);
669 this.height = Integer.parseInt(dimensions[1]);
670 this.resolution = PREDEFINED;
672 else if (resolution.equalsIgnoreCase(
"custom"))
675 this.height = height;
676 this.resolution = CUSTOM;
678 else if (resolution.equalsIgnoreCase(
"fitscreen"))
680 this.width = this.height = 0;
681 this.resolution = FITSCREEN;
685 this.width = this.height = 0;
686 this.resolution = AUTOMATIC;
690 public int getResolution()
695 public void setResolution(
int resolution)
697 this.resolution = resolution;
699 if (resolution == AUTOMATIC || resolution == FITSCREEN)
706 @NonNull
public String getResolutionString()
709 return (width +
"x" + height);
711 return (isFitScreen() ?
"fitscreen" : isAutomatic() ?
"automatic" :
"custom");
714 public boolean isPredefined()
717 return (resolution == PREDEFINED);
720 public boolean isAutomatic()
723 return (resolution == AUTOMATIC);
726 public boolean isFitScreen()
729 return (resolution == FITSCREEN);
732 public boolean isCustom()
735 return (resolution == CUSTOM);
738 public int getWidth()
744 public void setWidth(
int width)
749 public int getHeight()
755 public void setHeight(
int height)
757 this.height = height;
760 public int getColors()
766 public void setColors(
int colors)
768 this.colors = colors;
771 public void setScale(@NonNull String mode,
int desktop,
int device)
773 scaleMode =
"custom".equalsIgnoreCase(mode) ?
"custom" : mode;
774 scaleDesktop = desktop;
775 scaleDevice = device;
778 public boolean isCustomScale()
780 return "custom".equalsIgnoreCase(scaleMode);
783 @NonNull
public String getScaleMode()
788 public int getScalePreset()
790 if (
"140".equals(scaleMode))
792 if (
"180".equals(scaleMode))
797 public int getScaleDesktop()
802 public int getScaleDevice()
807 @Override
public int describeContents()
812 @Override
public void writeToParcel(@NonNull Parcel out,
int flags)
814 out.writeInt(resolution);
815 out.writeInt(colors);
817 out.writeInt(height);
818 out.writeString(scaleMode);
819 out.writeInt(scaleDesktop);
820 out.writeInt(scaleDevice);
826 public static final Parcelable.Creator<
DebugSettings> CREATOR =
839 @NonNull
private String debug =
"INFO";
840 private boolean asyncChannel =
true;
841 private boolean asyncTransport =
false;
842 private boolean asyncUpdate =
true;
851 asyncChannel = parcel.readBoolean();
852 asyncTransport = parcel.readBoolean();
853 asyncUpdate = parcel.readBoolean();
854 debug = Objects.requireNonNull(parcel.readString());
857 private void validate()
859 final String[] levels = {
"OFF",
"FATAL",
"ERROR",
"WARN",
"INFO",
"DEBUG",
"TRACE" };
861 for (String level : levels)
863 if (level.equalsIgnoreCase(
this.debug))
872 @NonNull
public String getDebugLevel()
878 public void setDebugLevel(@NonNull String debug)
883 public boolean getAsyncUpdate()
888 public void setAsyncUpdate(
boolean enabled)
890 asyncUpdate = enabled;
893 public boolean getAsyncChannel()
898 public void setAsyncChannel(
boolean enabled)
900 asyncChannel = enabled;
903 @Override
public int describeContents()
908 @Override
public void writeToParcel(@NonNull Parcel out,
int flags)
910 out.writeBoolean(asyncChannel);
911 out.writeBoolean(asyncTransport);
912 out.writeBoolean(asyncUpdate);
913 out.writeString(debug);
933 @NonNull
private String loadBalanceInfo =
"";
934 private boolean redirectSDCard =
false;
935 private int redirectSound = 0;
936 private boolean redirectMicrophone =
false;
937 private boolean redirectCamera =
false;
938 private boolean redirectPrinter =
false;
939 private int security = 0;
940 private boolean consoleMode =
false;
941 private boolean vmConnectMode =
false;
942 @NonNull
private String vmConnectGuid =
"";
944 @NonNull
private String remoteProgram =
"";
946 @NonNull
private String alternateShell =
"";
948 @NonNull
private String workDir =
"";
949 private int tlsSecLevel = -1;
950 private int tlsMinLevel = -1;
958 loadBalanceInfo = Objects.requireNonNull(parcel.readString());
959 redirectSDCard = parcel.readBoolean();
960 redirectSound = parcel.readInt();
961 redirectMicrophone = parcel.readBoolean();
962 redirectCamera = parcel.readBoolean();
963 redirectPrinter = parcel.readBoolean();
964 security = parcel.readInt();
965 consoleMode = parcel.readBoolean();
966 vmConnectMode = parcel.readBoolean();
967 vmConnectGuid = Objects.requireNonNull(parcel.readString());
968 remoteProgram = Objects.requireNonNull(parcel.readString());
969 alternateShell = Objects.requireNonNull(parcel.readString());
970 workDir = Objects.requireNonNull(parcel.readString());
971 tlsSecLevel = parcel.readInt();
972 tlsMinLevel = parcel.readInt();
975 private void validate()
977 switch (redirectSound)
1001 public int getTlsSecLevel()
1006 public void setTlsSecLevel(
int level)
1008 tlsSecLevel = level;
1011 public void setTlsMinLevel(
int level)
1013 tlsMinLevel = level;
1016 public int getTlsMinLevel()
1021 @NonNull
public String getLoadBalanceInfo()
1023 return loadBalanceInfo;
1026 public void setLoadBalanceInfo(@NonNull String info)
1028 loadBalanceInfo = info;
1030 public boolean getRedirectSDCard()
1032 return redirectSDCard;
1035 public void setRedirectSDCard(
boolean redirectSDCard)
1037 this.redirectSDCard = redirectSDCard;
1040 public boolean getRedirectPrinter()
1042 return redirectPrinter;
1045 public void setRedirectPrinter(
boolean redirectPrinter)
1047 this.redirectPrinter = redirectPrinter;
1050 public int getRedirectSound()
1053 return redirectSound;
1056 public void setRedirectSound(
int redirect)
1058 this.redirectSound = redirect;
1061 public boolean getRedirectMicrophone()
1063 return redirectMicrophone;
1066 public void setRedirectMicrophone(
boolean redirect)
1068 this.redirectMicrophone = redirect;
1071 public boolean getRedirectCamera()
1073 return redirectCamera;
1076 public void setRedirectCamera(
boolean redirect)
1078 this.redirectCamera = redirect;
1081 public int getSecurity()
1087 public void setSecurity(
int security)
1089 this.security = security;
1092 public boolean getConsoleMode()
1097 public void setConsoleMode(
boolean consoleMode)
1099 this.consoleMode = consoleMode;
1102 @NonNull
public String getRemoteProgram()
1104 return remoteProgram;
1107 public void setRemoteProgram(@NonNull String remoteProgram)
1109 this.remoteProgram = remoteProgram;
1112 @NonNull
public String getAlternateShell()
1114 return alternateShell;
1117 public void setAlternateShell(@NonNull String alternateShell)
1119 this.alternateShell = alternateShell;
1122 @NonNull
public String getWorkDir()
1127 public void setWorkDir(@NonNull String workDir)
1129 this.workDir = workDir;
1132 public boolean getVmConnectMode()
1134 return vmConnectMode;
1137 public void setVmConnectMode(
boolean vmConnectMode)
1139 this.vmConnectMode = vmConnectMode;
1142 @NonNull
public String getVmConnectGuid()
1144 return vmConnectGuid;
1147 public void setVmConnectGuid(@NonNull String vmConnectGuid)
1149 this.vmConnectGuid = vmConnectGuid;
1152 @Override
public int describeContents()
1157 @Override
public void writeToParcel(@NonNull Parcel out,
int flags)
1159 out.writeString(loadBalanceInfo);
1160 out.writeBoolean(redirectSDCard);
1161 out.writeInt(redirectSound);
1162 out.writeBoolean(redirectMicrophone);
1163 out.writeBoolean(redirectCamera);
1164 out.writeBoolean(redirectPrinter);
1165 out.writeInt(security);
1166 out.writeBoolean(consoleMode);
1167 out.writeBoolean(vmConnectMode);
1168 out.writeString(vmConnectGuid);
1169 out.writeString(remoteProgram);
1170 out.writeString(alternateShell);
1171 out.writeString(workDir);
1172 out.writeInt(tlsSecLevel);
1173 out.writeInt(tlsMinLevel);
1192 @NonNull
private String hostname =
"";
1193 private int port = 443;
1195 @NonNull
private String username =
"";
1197 @NonNull
private String password =
"";
1199 @NonNull
private String domain =
"";
1207 hostname = Objects.requireNonNull(parcel.readString());
1208 port = parcel.readInt();
1209 username = Objects.requireNonNull(parcel.readString());
1210 password = Objects.requireNonNull(parcel.readString());
1211 domain = Objects.requireNonNull(parcel.readString());
1214 @NonNull
public String getHostname()
1219 public void setHostname(@NonNull String hostname)
1221 this.hostname = hostname;
1224 public int getPort()
1229 public void setPort(
int port)
1234 @NonNull
public String getUsername()
1239 public void setUsername(@NonNull String username)
1241 this.username = username;
1244 @NonNull
public String getPassword()
1249 public void setPassword(@NonNull String password)
1251 this.password = password;
1254 @NonNull
public String getDomain()
1259 public void setDomain(@NonNull String domain)
1261 this.domain = domain;
1264 @Override
public int describeContents()
1269 @Override
public void writeToParcel(@NonNull Parcel out,
int flags)
1271 out.writeString(hostname);
1273 out.writeString(username);
1274 out.writeString(password);
1275 out.writeString(domain);