// Path: src/main/java/com/dcp/sm/logic/factory/TypeFactory.java
// public enum LOG_LEVEL {
//     DEBUG(0, "DEBUG"),
//     INFO(1, "INFO"),
//     WARN(2, "WARNING"),
//     ERR(3, "ERROR");
//         
//     private int _level;
//     private String _tag;
//     private LOG_LEVEL(int level, String tag)
//     {
//         _level = level;
//         _tag = tag;
//     }
//     @Override
//     public String toString()
//     {
//         return this._tag;
//     }
//         
//     public int value()
//     {
//         return this._level;
//     }
// }
// 
// Path: src/main/java/com/dcp/sm/logic/model/config/build/WebConfig.java
// public class WebConfig implements Serializable
// {
//     /**
//      * web configuration saved on the web.dcp file
//      */
//     private static final long serialVersionUID = 1439240538763028358L;
// 
//     transient private boolean enabled = false; // if web mode is enabled
//     
//     private String host = "";
//     private String user = "";
//     private String pass = "";
//     private String remoteDir = "";
//     private String path = "";
//     
//     
//     public WebConfig()
//     {
//     }
//     public WebConfig(WebConfig webConfig)
//     {
//         this.host = webConfig.host;
//         this.user = webConfig.user;
//         this.pass = webConfig.pass;
//         this.remoteDir = webConfig.remoteDir;
//         this.path = webConfig.path;
//     }
//     
//     
//     public boolean isEnabled()
//     {
//         return enabled;
//     }
//     public void setEnabled(boolean enabled)
//     {
//         this.enabled = enabled;
//     }
//     
//     public String getHost()
//     {
//         return host;
//     }
//     public void setHost(String host)
//     {
//         this.host = host;
//     }
//     public String getUser()
//     {
//         return user;
//     }
//     public void setUser(String user)
//     {
//         this.user = user;
//     }
//     public String getPass()
//     {
//         return pass;
//     }
//     public void setPass(String pass)
//     {
//         this.pass = pass;
//     }
//     public String getRemoteDir()
//     {
//         return remoteDir;
//     }
//     public void setRemoteDir(String remoteDir)
//     {
//         this.remoteDir = remoteDir;
//     }
//     public String getPath()
//     {
//         return path;
//     }
//     public void setPath(String path)
//     {
//         this.path = path;
//     }
//     
// }
// 
// Path: src/main/java/com/dcp/sm/main/log/Out.java
// public class Out
// {
//     //Log
//     private static List<String> log = new ArrayList<String>();//Global Log
//     public static List<String> getLog() { return log; }
//     private static int displayLevel = 1;//logs to display must be >= than this
//     
//     private static List<String> compileLog = new ArrayList<String>();//Izpack compile Log
//     public static List<String> getCompileLog() { return compileLog; }
//     
//     //Pivot GUI Component Repaint for log update
//     private static Component logger = null;
//     public static Component getLogger() { return logger; }
//     public static void setLogger(Component logger) { Out.logger = logger; }
//     
//     //Clear the stream cache
//     public static void clearCompileLog() {
//         compileLog.clear();
//     }
//     
//     //Add a new empty line
//     public static void newLine() {
//         print(LOG_LEVEL.INFO, "");
//     }
//     
//     /**
//      * Prints a string to the output stream
//      * @param text: log text
//      * @param outStream: output stream
//      */
//     public static void print(String text, PrintStream outStream) {
//         outStream.println(text);
//     }
//     
//     /**
//      * print text with a tag
//      * format: [TAG] TXT
//      * @param TAG: tag name
//      * @param TXT: text to log
//      */
//     public static void print(LOG_LEVEL level, String msg) {
//         print("["+level.toString()+"] "+msg, System.out);
//         log.add(msg);
//         final String log_TXT = msg;
//         
//         if (level.value() >= displayLevel)// display if >= than threshold
//             log(log_TXT);
//     }
//     
//     public static void log(final String msg) {
//         ApplicationContext.queueCallback(new Runnable() {//Enqueue GUI display repaint
//             @Override public void run()
//             {
//                 compileLog.add(msg);
//                 if (getLogger() != null) getLogger().repaint();//Component update
//             }
//         });
//     }
//     
// }


import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.URL;
import org.apache.pivot.beans.BXML;
import org.apache.pivot.beans.Bindable;
import org.apache.pivot.collections.Map;
import org.apache.pivot.util.Resources;
import org.apache.pivot.wtk.Border;
import org.apache.pivot.wtk.Button;
import org.apache.pivot.wtk.ButtonPressListener;
import org.apache.pivot.wtk.ButtonStateListener;
import org.apache.pivot.wtk.Checkbox;
import org.apache.pivot.wtk.Dialog;
import org.apache.pivot.wtk.PushButton;
import org.apache.pivot.wtk.TextInput;
import org.apache.pivot.wtk.TextInputContentListener;
import org.apache.pivot.wtk.Button.State;
import com.dcp.sm.logic.factory.TypeFactory.LOG_LEVEL;
import com.dcp.sm.logic.model.config.build.WebConfig;
import com.dcp.sm.main.log.Out;
package com.dcp.sm.gui.pivot.frames;




/**
 * SFTP Dialog
 * @author ssaideli
 *
 */
public class SftpDialog extends Dialog implements Bindable
{
    @BXML private Checkbox cbEnable;
    @BXML private Border formArea;
    
    @BXML private TextInput inHost;
    @BXML private TextInput inUser;
    @BXML private TextInput inPass;
    @BXML private TextInput inRemDir;
    @BXML private TextInput inPath;
    
    @BXML private PushButton btSave, btLoad;
    
// Path: src/main/java/com/dcp/sm/logic/factory/TypeFactory.java
// public enum LOG_LEVEL {
//     DEBUG(0, "DEBUG"),
//     INFO(1, "INFO"),
//     WARN(2, "WARNING"),
//     ERR(3, "ERROR");
//         
//     private int _level;
//     private String _tag;
//     private LOG_LEVEL(int level, String tag)
//     {
//         _level = level;
//         _tag = tag;
//     }
//     @Override
//     public String toString()
//     {
//         return this._tag;
//     }
//         
//     public int value()
//     {
//         return this._level;
//     }
// }
// 
// Path: src/main/java/com/dcp/sm/logic/model/config/build/WebConfig.java
// public class WebConfig implements Serializable
// {
//     /**
//      * web configuration saved on the web.dcp file
//      */
//     private static final long serialVersionUID = 1439240538763028358L;
// 
//     transient private boolean enabled = false; // if web mode is enabled
//     
//     private String host = "";
//     private String user = "";
//     private String pass = "";
//     private String remoteDir = "";
//     private String path = "";
//     
//     
//     public WebConfig()
//     {
//     }
//     public WebConfig(WebConfig webConfig)
//     {
//         this.host = webConfig.host;
//         this.user = webConfig.user;
//         this.pass = webConfig.pass;
//         this.remoteDir = webConfig.remoteDir;
//         this.path = webConfig.path;
//     }
//     
//     
//     public boolean isEnabled()
//     {
//         return enabled;
//     }
//     public void setEnabled(boolean enabled)
//     {
//         this.enabled = enabled;
//     }
//     
//     public String getHost()
//     {
//         return host;
//     }
//     public void setHost(String host)
//     {
//         this.host = host;
//     }
//     public String getUser()
//     {
//         return user;
//     }
//     public void setUser(String user)
//     {
//         this.user = user;
//     }
//     public String getPass()
//     {
//         return pass;
//     }
//     public void setPass(String pass)
//     {
//         this.pass = pass;
//     }
//     public String getRemoteDir()
//     {
//         return remoteDir;
//     }
//     public void setRemoteDir(String remoteDir)
//     {
//         this.remoteDir = remoteDir;
//     }
//     public String getPath()
//     {
//         return path;
//     }
//     public void setPath(String path)
//     {
//         this.path = path;
//     }
//     
// }
// 
// Path: src/main/java/com/dcp/sm/main/log/Out.java
// public class Out
// {
//     //Log
//     private static List<String> log = new ArrayList<String>();//Global Log
//     public static List<String> getLog() { return log; }
//     private static int displayLevel = 1;//logs to display must be >= than this
//     
//     private static List<String> compileLog = new ArrayList<String>();//Izpack compile Log
//     public static List<String> getCompileLog() { return compileLog; }
//     
//     //Pivot GUI Component Repaint for log update
//     private static Component logger = null;
//     public static Component getLogger() { return logger; }
//     public static void setLogger(Component logger) { Out.logger = logger; }
//     
//     //Clear the stream cache
//     public static void clearCompileLog() {
//         compileLog.clear();
//     }
//     
//     //Add a new empty line
//     public static void newLine() {
//         print(LOG_LEVEL.INFO, "");
//     }
//     
//     /**
//      * Prints a string to the output stream
//      * @param text: log text
//      * @param outStream: output stream
//      */
//     public static void print(String text, PrintStream outStream) {
//         outStream.println(text);
//     }
//     
//     /**
//      * print text with a tag
//      * format: [TAG] TXT
//      * @param TAG: tag name
//      * @param TXT: text to log
//      */
//     public static void print(LOG_LEVEL level, String msg) {
//         print("["+level.toString()+"] "+msg, System.out);
//         log.add(msg);
//         final String log_TXT = msg;
//         
//         if (level.value() >= displayLevel)// display if >= than threshold
//             log(log_TXT);
//     }
//     
//     public static void log(final String msg) {
//         ApplicationContext.queueCallback(new Runnable() {//Enqueue GUI display repaint
//             @Override public void run()
//             {
//                 compileLog.add(msg);
//                 if (getLogger() != null) getLogger().repaint();//Component update
//             }
//         });
//     }
//     
// }


// Path: src/main/java/com/dcp/sm/gui/pivot/frames/SftpDialog.java
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.URL;
import org.apache.pivot.beans.BXML;
import org.apache.pivot.beans.Bindable;
import org.apache.pivot.collections.Map;
import org.apache.pivot.util.Resources;
import org.apache.pivot.wtk.Border;
import org.apache.pivot.wtk.Button;
import org.apache.pivot.wtk.ButtonPressListener;
import org.apache.pivot.wtk.ButtonStateListener;
import org.apache.pivot.wtk.Checkbox;
import org.apache.pivot.wtk.Dialog;
import org.apache.pivot.wtk.PushButton;
import org.apache.pivot.wtk.TextInput;
import org.apache.pivot.wtk.TextInputContentListener;
import org.apache.pivot.wtk.Button.State;
import com.dcp.sm.logic.factory.TypeFactory.LOG_LEVEL;
import com.dcp.sm.logic.model.config.build.WebConfig;
import com.dcp.sm.main.log.Out;

package com.dcp.sm.gui.pivot.frames;




/**
 * SFTP Dialog
 * @author ssaideli
 *
 */
public class SftpDialog extends Dialog implements Bindable
{
    @BXML private Checkbox cbEnable;
    @BXML private Border formArea;
    
    @BXML private TextInput inHost;
    @BXML private TextInput inUser;
    @BXML private TextInput inPass;
    @BXML private TextInput inRemDir;
    @BXML private TextInput inPath;
    
    @BXML private PushButton btSave, btLoad;
    
    private WebConfig webConfig;