|
|
|
@ -8,12 +8,14 @@ import com.fr.base.Utils;
|
|
|
|
|
import com.fr.design.actions.help.alphafine.AlphaFineConfigManager; |
|
|
|
|
import com.fr.design.constants.UIConstants; |
|
|
|
|
import com.fr.design.data.DesignTableDataManager; |
|
|
|
|
import com.fr.design.dialog.ErrorDialog; |
|
|
|
|
import com.fr.design.env.DesignerWorkspaceGenerator; |
|
|
|
|
import com.fr.design.env.DesignerWorkspaceInfo; |
|
|
|
|
import com.fr.design.env.DesignerWorkspaceType; |
|
|
|
|
import com.fr.design.env.LocalDesignerWorkspaceInfo; |
|
|
|
|
import com.fr.design.env.RemoteDesignerWorkspaceInfo; |
|
|
|
|
import com.fr.design.file.HistoryTemplateListPane; |
|
|
|
|
import com.fr.design.i18n.Toolkit; |
|
|
|
|
import com.fr.design.locale.impl.ProductImproveMark; |
|
|
|
|
import com.fr.design.mainframe.vcs.VcsConfigManager; |
|
|
|
|
import com.fr.design.notification.SnapChatConfig; |
|
|
|
@ -21,6 +23,7 @@ import com.fr.design.update.push.DesignerPushUpdateConfigManager;
|
|
|
|
|
import com.fr.design.style.color.ColorSelectConfigManager; |
|
|
|
|
import com.fr.design.utils.DesignUtils; |
|
|
|
|
import com.fr.design.utils.DesignerPort; |
|
|
|
|
import com.fr.exit.DesignerExiter; |
|
|
|
|
import com.fr.file.FILEFactory; |
|
|
|
|
import com.fr.general.ComparatorUtils; |
|
|
|
|
import com.fr.general.FRLogFormatter; |
|
|
|
@ -55,6 +58,7 @@ import javax.swing.SwingWorker.StateValue;
|
|
|
|
|
import java.awt.Color; |
|
|
|
|
import java.awt.Rectangle; |
|
|
|
|
import java.io.File; |
|
|
|
|
import java.io.FileNotFoundException; |
|
|
|
|
import java.io.FileOutputStream; |
|
|
|
|
import java.io.FileReader; |
|
|
|
|
import java.io.FileWriter; |
|
|
|
@ -83,6 +87,10 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter {
|
|
|
|
|
private static final String VERSION_80 = "80"; |
|
|
|
|
private static final int CACHINGTEMPLATE_LIMIT = 5; |
|
|
|
|
private static final String WEB_NAME = "webapps"; |
|
|
|
|
/** |
|
|
|
|
* 指定默认工作空间 |
|
|
|
|
*/ |
|
|
|
|
public static final String DEFAULT_WORKSPACE_PATH = "fr.designer.workspace.default"; |
|
|
|
|
|
|
|
|
|
private static DesignerEnvManager designerEnvManager; // gui.
|
|
|
|
|
private String activationKey = null; |
|
|
|
@ -199,6 +207,9 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter {
|
|
|
|
|
GeneralContext.setLocale(designerEnvManager.getLanguage()); |
|
|
|
|
try { |
|
|
|
|
XMLTools.readFileXML(designerEnvManager, designerEnvManager.getDesignerEnvFile()); |
|
|
|
|
} catch (FileNotFoundException e) { |
|
|
|
|
FineLoggerFactory.getLogger().error(e.getMessage(), e); |
|
|
|
|
XmlHandler.Self.handle(e); |
|
|
|
|
} catch (Exception e) { |
|
|
|
|
FineLoggerFactory.getLogger().error(e.getMessage(), e); |
|
|
|
|
} |
|
|
|
@ -347,6 +358,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter {
|
|
|
|
|
|
|
|
|
|
} catch (IOException e) { |
|
|
|
|
FineLoggerFactory.getLogger().error(e.getMessage(), e); |
|
|
|
|
XmlHandler.Self.handle(e); |
|
|
|
|
} finally { |
|
|
|
|
if (null != fileWriter) { |
|
|
|
|
try { |
|
|
|
@ -561,6 +573,10 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private String getDefaultenvPath(String installHome) { |
|
|
|
|
String defaultWorkspacePath = System.getProperty(DEFAULT_WORKSPACE_PATH); |
|
|
|
|
if (defaultWorkspacePath != null) { |
|
|
|
|
return defaultWorkspacePath; |
|
|
|
|
} |
|
|
|
|
//这里需要转成反斜杠和生成默认路径一致
|
|
|
|
|
return new File(StableUtils.pathJoin(installHome, WEB_NAME, ProjectConstants.WEBAPP_NAME, ProjectConstants.WEBINF_NAME)).getPath(); |
|
|
|
|
} |
|
|
|
@ -1403,6 +1419,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter {
|
|
|
|
|
/** |
|
|
|
|
* 对国际化进行校验 |
|
|
|
|
* 非简繁英日韩的默认环境 设计器全部默认为英文版本 |
|
|
|
|
* |
|
|
|
|
* @param locale |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
@ -1554,7 +1571,7 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter {
|
|
|
|
|
readVcsAttr(reader); |
|
|
|
|
} else if (DesignerPort.XML_TAG.equals(name)) { |
|
|
|
|
readDesignerPort(reader); |
|
|
|
|
} else if (name.equals(SnapChatConfig.XML_TAG)) { |
|
|
|
|
}else if (name.equals(SnapChatConfig.XML_TAG)) { |
|
|
|
|
readSnapChatConfig(reader); |
|
|
|
|
} else { |
|
|
|
|
readLayout(reader, name); |
|
|
|
@ -2050,4 +2067,28 @@ public class DesignerEnvManager implements XMLReadable, XMLWriter {
|
|
|
|
|
public void setVcsConfigManager(VcsConfigManager vcsConfigManager) { |
|
|
|
|
this.vcsConfigManager = vcsConfigManager; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
enum XmlHandler { |
|
|
|
|
Self; |
|
|
|
|
public void handle(Throwable throwable) { |
|
|
|
|
ErrorDialog dialog = new ErrorDialog(null, |
|
|
|
|
Toolkit.i18nText("Fine-Design_Error_Start_Apology_Message"), |
|
|
|
|
Toolkit.i18nText("Fine-Design_Error_Start_Report"), |
|
|
|
|
throwable.getMessage()) { |
|
|
|
|
@Override |
|
|
|
|
protected void okEvent() { |
|
|
|
|
dispose(); |
|
|
|
|
DesignerExiter.getInstance().execute(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
protected void restartEvent() { |
|
|
|
|
dispose(); |
|
|
|
|
RestartHelper.restart(); |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
|
dialog.setVisible(true); |
|
|
|
|
DesignerExiter.getInstance().execute(); |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
|
} |
|
|
|
|