帆软报表设计器源代码。
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

29 lines
1.1 KiB

package com.fr.design.env;
import com.fr.base.Env;
import com.fr.base.env.EnvConfig;
import com.fr.base.env.LocalEnvConfig;
import com.fr.env.RemoteEnv;
import com.fr.workspace.WorkContext;
import com.fr.workspace.Workspace;
import com.fr.workspace.connect.WorkspaceClient;
import com.fr.workspace.connect.WorkspaceConnection;
/**
* 根据配置生成运行环境
*/
public class DesignerWorkspaceGenerator {
public static Workspace generate(EnvConfig config) {
Workspace workspace = null;
if (config instanceof LocalEnvConfig) {
workspace = WorkContext.getFactory().build(config.getPath());
} else if (config instanceof RemoteEnvConfig) {
RemoteEnvConfig remoteConfig = (RemoteEnvConfig) config;
WorkspaceClient client = WorkContext.getConnector().connect(new WorkspaceConnection(remoteConfig.getHost(), remoteConfig.getPort(), remoteConfig.getUsername(), remoteConfig.getPassword()));
workspace = new RemoteWorkspace(client, remoteConfig.getHost() + ":" + remoteConfig.getPort(), remoteConfig.getPassword());
}
return workspace;
}
}