package com.undatech.opaque.proxmox.pojo; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import org.json.JSONException; import org.json.JSONObject; public class SpiceDisplay { private String password; private int tlsPort; private String host; private String title; private String ca; private String hostSubject; private String proxy; private int deleteThisFile; private String secureAttention; private String type; private String toggleFullscreen; private String releaseCursor; public SpiceDisplay(JSONObject data) throws JSONException { password = data.getString("password"); tlsPort = data.getInt("tls-port"); host = data.getString("host"); title = data.getString("title"); ca = data.getString("ca"); hostSubject = data.getString("host-subject"); proxy = data.getString("proxy"); deleteThisFile = data.getInt("delete-this-file"); secureAttention = data.getString("secure-attention"); type = data.getString("type"); toggleFullscreen = data.getString("toggle-fullscreen"); releaseCursor = data.getString("release-cursor"); } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public int getTlsPort() { return tlsPort; } public void setTlsPort(int tlsPort) { this.tlsPort = tlsPort; } public String getHost() { return host; } public void setHost(String host) { this.host = host; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getCa() { return ca; } public void setCa(String ca) { this.ca = ca; } public String getProxy() { return proxy; } public void setProxy(String proxy) { this.proxy = proxy; } public String getHostSubject() { return hostSubject; } public void setHostSubject(String hostSubject) { this.hostSubject = hostSubject; } public int getDeleteThisFile() { return deleteThisFile; } public void setDeleteThisFile(int deleteThisFile) { this.deleteThisFile = deleteThisFile; } public String getSecureAttention() { return secureAttention; } public void setSecureAttention(String secureAttention) { this.secureAttention = secureAttention; } public String getType() { return type; } public void setType(String type) { this.type = type; } public String getToggleFullscreen() { return toggleFullscreen; } public void setToggleFullscreen(String toggleFullscreen) { this.toggleFullscreen = toggleFullscreen; } public String getReleaseCursor() { return releaseCursor; } public void setReleaseCursor(String releaseCursor) { this.releaseCursor = releaseCursor; } public void outputToFile (String tempVvFile, String proxyReplacement) throws IOException { File file = new File(tempVvFile); FileOutputStream fos = new FileOutputStream(file); fos.write("[virt-viewer]\n".getBytes()); fos.write(("tls-port=" + Integer.toString(tlsPort) + "\n").getBytes()); fos.write(("ca=" + ca + "\n").getBytes()); fos.write(("host=" + host + "\n").getBytes()); fos.write(("host-subject=" + hostSubject + "\n").getBytes()); fos.write(("password=" + password + "\n").getBytes()); if (proxyReplacement != null) { fos.write(("proxy=" + proxy.replaceAll("//.*:", "//" + proxyReplacement + ":") + "\n").getBytes()); } else { fos.write(("proxy=" + proxy + "\n").getBytes()); } fos.write(("title=" + title + "\n").getBytes()); fos.write(("delete-this-file=" + Integer.toString(deleteThisFile) + "\n").getBytes()); fos.write(("release-cursor=" + releaseCursor + "\n").getBytes()); fos.write(("secure-attention=" + secureAttention + "\n").getBytes()); fos.write(("toggle-fullscreen=" + toggleFullscreen + "\n").getBytes()); fos.write(("type=" + type + "\n").getBytes()); fos.close(); } }