自定义的工具支持保存为模型文件(*.xml)。将工具参数值保存为 *.xml 中的字符串叫序列化,从 *.xml 中字符串解析为对应参数值叫反序列化。
点击此处下载示例代码。
1. 继承 TargetStringConvert 类
iDesktopX 提供一个可供扩展的抽象类 TargetStringConvertor.java,您可以选择直接继承 TargetStringConvert,实现对应的方法。
public class TableLineItemStringConvertor extends TargetStringConvertor {
@Override
protected String internalValueTo(TableLineItem tableLineItem) {
return tableLineItem.getKey() + "," + tableLineItem.getValue();
}
@Override
protected TableLineItem internalValueOf(String s) {
String[] split = s.split(",");
TableLineItem tableLineItem = new TableLineItem();
tableLineItem.setKey(split[0]);
tableLineItem.setValue(split[1]);
return tableLineItem;
}
@Override
public Class getSourceType() {
return TableLineItem.class;
}
}
2. 注册:
新建 resources/META-INF/services/com.supermap.sps.core.convertor.IConvertor 文件,并完成注册。