package com.fr.plugin.file.submit.oss.ui; import com.fr.design.beans.BasicBeanPane; import com.fanruan.api.design.ui.component.table.UITableEditorPane; import com.fr.plugin.file.submit.oss.fun.OssSubmitTarget; import com.fr.plugin.file.submit.oss.fun.OssSubmitTargetConfig; import com.fr.plugin.file.submit.oss.job.OssSubmitJob; import javax.swing.*; import java.awt.*; public class OssPathConfigPane extends BasicBeanPane { private UITableEditorPane tableEditorPane; private OssSubmitPathTableModel model = new OssSubmitPathTableModel(); public OssPathConfigPane() { setLayout(new BorderLayout()); this.tableEditorPane = new UITableEditorPane(model); this.add(tableEditorPane, BorderLayout.CENTER); } @Override public void populateBean(OssSubmitJob job) { if (job != null) { OssSubmitTargetConfig submitTargetConfig = job.getSubmitTargetConfig(); if (submitTargetConfig != null) { OssSubmitTarget[] targets = submitTargetConfig.getSubmitTargets(); this.tableEditorPane.populate(targets); } } } @Override public OssSubmitJob updateBean() { OssSubmitJob submitJob = new OssSubmitJob(); OssSubmitTargetConfig submitTargetConfig = new OssSubmitTargetConfig(); java.util.List targetList = tableEditorPane.update(); for (OssSubmitTarget target : targetList) { submitTargetConfig.addSubmitTarget(target); } model.clear(); submitJob.setSubmitTargetConfig(submitTargetConfig); return submitJob; } @Override protected String title4PopupWindow() { return "Path"; } }