Browse Source

operator注册从engine-cross移动到designer-env

master
hzzz 7 years ago
parent
commit
d8838e5bce
  1. 2
      designer-form/src/com/fr/design/form/mobile/FormMobileTemplateSettingsPane.java
  2. 169
      designer-realize/src/com/fr/start/module/DesignerEnvProvider.java

2
designer-form/src/com/fr/design/form/mobile/FormMobileTemplateSettingsPane.java

@ -38,7 +38,7 @@ public class FormMobileTemplateSettingsPane extends BasicBeanPane<FormMobileAttr
JPanel contentPane = new JPanel(FRGUIPaneFactory.createBorderLayout());
contentPane.setBorder(BorderFactory.createEmptyBorder(IntervalConstants.INTERVAL_L1, IntervalConstants.INTERVAL_L5, IntervalConstants.INTERVAL_L2, 0));
JPanel mobileSettingsPane = new JPanel(FRGUIPaneFactory.createBorderLayout());
final JPanel mobileSettingsPane = new JPanel(FRGUIPaneFactory.createBorderLayout());
mobileSettingsPane.setVisible(false);
mobileSettingsPane.add(getMobileCanvasSizeCheckPane(), BorderLayout.NORTH);
mobileSettingsPane.add(getAdaptivePropertyAutoMatchCheckPane(), BorderLayout.CENTER);

169
designer-realize/src/com/fr/start/module/DesignerEnvProvider.java

@ -1,20 +1,45 @@
package com.fr.start.module;
import com.fr.base.ModifiedTable;
import com.fr.base.Parameter;
import com.fr.base.StoreProcedureParameter;
import com.fr.base.TableData;
import com.fr.base.env.serializer.OldSerializerAdapter;
import com.fr.base.env.serializer.ProcedureDataModelSerializer;
import com.fr.base.env.user.LocalUserCenter;
import com.fr.base.env.user.RemoteUserCenter;
import com.fr.base.operator.connection.DataConnectionOperator;
import com.fr.base.operator.connection.LocalDataConnectionOperator;
import com.fr.base.operator.file.FileOperator;
import com.fr.base.operator.file.LocalFileOperator;
import com.fr.core.env.operator.envinfo.EnvInfoOperator;
import com.fr.core.env.operator.envinfo.LocalEnvInfoOperator;
import com.fr.core.env.operator.user.UserCenter;
import com.fr.core.env.proxy.EnvProxy;
import com.fr.data.core.db.TableProcedure;
import com.fr.data.impl.Connection;
import com.fr.data.impl.storeproc.ProcedureDataModel;
import com.fr.data.impl.storeproc.StoreProcedure;
import com.fr.dav.DavXMLUtils;
import com.fr.design.DesignerEnvManager;
import com.fr.file.filetree.FileNode;
import com.fr.general.ComparatorUtils;
import com.fr.module.Activator;
import com.fr.start.EnvSwitcher;
import com.fr.start.StartServer;
import java.io.InputStream;
import java.io.OutputStream;
/**
* Created by juhaoyu on 2018/1/8.
* 设计器启动时的环境相关模块activator
*/
public class DesignerEnvProvider extends Activator {
@Override
public void start() {
String[] args = getModule().upFindSingleton(StartupArgs.class).get();
if (args != null) {
for (String arg : args) {
@ -26,16 +51,150 @@ public class DesignerEnvProvider extends Activator {
}
}
getRoot().setSingleton(EnvSwitcher.class, new EnvSwitcher());
initEnvOperators();
//设置好环境即可,具体跟环境有关的模块会自动调用
getRoot().getSingleton(EnvSwitcher.class).switch2LastEnv();
}
@Override
public void stop() {
//清空模块
getRoot().removeSingleton(EnvSwitcher.class);
}
private void initEnvOperators() {
addSerializers();
EnvProxy.addLocalService(FileOperator.class, new LocalFileOperator());
EnvProxy.addLocalService(DataConnectionOperator.class, new LocalDataConnectionOperator());
EnvProxy.addLocalService(EnvInfoOperator.class, new LocalEnvInfoOperator());
EnvProxy.addLocalService(UserCenter.class, new LocalUserCenter());
EnvProxy.addRemoteService(UserCenter.class, new RemoteUserCenter());
}
private void addSerializers() {
EnvProxy.addSerializer(ProcedureDataModel[].class, new ProcedureDataModelSerializer());
EnvProxy.addSerializer(ModifiedTable.class, new OldSerializerAdapter<ModifiedTable>(
new OldSerializerAdapter.OldSerializer<ModifiedTable>() {
@Override
public void serializer(ModifiedTable obj, OutputStream out) throws Exception {
DavXMLUtils.writeXMLModifiedTables(obj, out);
}
},
new OldSerializerAdapter.OldDeserializer<ModifiedTable>() {
@Override
public ModifiedTable desializer(InputStream in) throws Exception {
return DavXMLUtils.readXMLModifiedTables(in);
}
}
));
EnvProxy.addSerializer(com.fr.data.impl.Connection.class, new OldSerializerAdapter<com.fr.data.impl.Connection>(
new OldSerializerAdapter.OldSerializer<Connection>() {
@Override
public void serializer(Connection obj, OutputStream out) {
DavXMLUtils.writeXMLFileDatabaseConnection(obj, out);
}
},
new OldSerializerAdapter.OldDeserializer<Connection>() {
@Override
public Connection desializer(InputStream in) throws Exception {
return DavXMLUtils.readXMLDatabaseConnection(in);
}
}
));
EnvProxy.addSerializer(FileNode[].class, new OldSerializerAdapter<FileNode[]>(
new OldSerializerAdapter.OldSerializer<FileNode[]>() {
@Override
public void serializer(FileNode[] obj, OutputStream out) {
DavXMLUtils.writeXMLFileNodes(obj, out);
}
},
new OldSerializerAdapter.OldDeserializer<FileNode[]>() {
@Override
public FileNode[] desializer(InputStream in) {
return DavXMLUtils.readXMLFileNodes(in);
}
}
));
EnvProxy.addSerializer(TableProcedure[].class, new OldSerializerAdapter<TableProcedure[]>(
new OldSerializerAdapter.OldSerializer<TableProcedure[]>() {
@Override
public void serializer(TableProcedure[] obj, OutputStream out) {
DavXMLUtils.writeXMLFileSQLTable(obj, out);
}
},
new OldSerializerAdapter.OldDeserializer<TableProcedure[]>() {
@Override
public TableProcedure[] desializer(InputStream in) throws Exception {
return DavXMLUtils.readXMLSQLTables(in);
}
}
));
EnvProxy.addSerializer(TableData.class, new OldSerializerAdapter<TableData>(
new OldSerializerAdapter.OldSerializer<TableData>() {
@Override
public void serializer(TableData obj, OutputStream out) {
DavXMLUtils.writeXMLFileTableData(obj, out);
}
},
new OldSerializerAdapter.OldDeserializer<TableData>() {
@Override
public TableData desializer(InputStream in) throws Exception {
return DavXMLUtils.readXMLTableData(in);
}
}
));
EnvProxy.addSerializer(Parameter[].class, new OldSerializerAdapter<Parameter[]>(
new OldSerializerAdapter.OldSerializer<Parameter[]>() {
@Override
public void serializer(Parameter[] obj, OutputStream out) {
DavXMLUtils.writeXMLFileParameters(obj, out);
}
},
new OldSerializerAdapter.OldDeserializer<Parameter[]>() {
@Override
public Parameter[] desializer(InputStream in) throws Exception {
return DavXMLUtils.readXMLParameters(in);
}
}
));
EnvProxy.addSerializer(StoreProcedure.class, new OldSerializerAdapter<StoreProcedure>(
new OldSerializerAdapter.OldSerializer<StoreProcedure>() {
@Override
public void serializer(StoreProcedure obj, OutputStream out) {
DavXMLUtils.writeXMLFileStoreProcedure(obj, out);
}
},
new OldSerializerAdapter.OldDeserializer<StoreProcedure>() {
@Override
public StoreProcedure desializer(InputStream in) throws Exception {
return DavXMLUtils.readXMLStoreProcedure(in);
}
}
));
EnvProxy.addSerializer(StoreProcedureParameter[].class, new OldSerializerAdapter<StoreProcedureParameter[]>(
new OldSerializerAdapter.OldSerializer<StoreProcedureParameter[]>() {
@Override
public void serializer(StoreProcedureParameter[] obj, OutputStream out) {
DavXMLUtils.writeXMLFileParameters(obj, out);
}
},
new OldSerializerAdapter.OldDeserializer<StoreProcedureParameter[]>() {
@Override
public StoreProcedureParameter[] desializer(InputStream in) throws Exception {
return DavXMLUtils.readXMLStoreProcedureParameters(in);
}
}
));
}
}

Loading…
Cancel
Save