文件可上传至阿里云OSS中,也可以从OSS中下载文件。
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.
 
 
 

69 lines
2.1 KiB

package com.fr.plugin.file.submit.oss.fun;
import com.fanruan.api.xml.XmlKit;
import com.fr.stable.xml.XMLPrintWriter;
import com.fr.stable.xml.XMLReadable;
import com.fr.stable.xml.XMLable;
import com.fr.stable.xml.XMLableReader;
import java.util.ArrayList;
import java.util.List;
public class OssSubmitTargetConfig implements XMLable {
public static final String XML_TAG = "OssSubmitTargetConfig";
private List<OssSubmitTarget> targets = new ArrayList<OssSubmitTarget>();
public void addSubmitTarget(OssSubmitTarget target) {
targets.add(target);
}
public void clearSubmitTargets() {
targets.clear();
}
public void removeSubmitTarget(OssSubmitTarget target) {
targets.remove(target);
}
public OssSubmitTarget[] getSubmitTargets() {
return targets.toArray(new OssSubmitTarget[0]);
}
@Override
public void readXML(XMLableReader reader) {
if (reader.isChildNode()) {
reader.readXMLObject(new XMLReadable() {
@Override
public void readXML(XMLableReader xmLableReader) {
if (xmLableReader.isChildNode()) {
String tagName = xmLableReader.getTagName();
if (OssSubmitTarget.XML_TAG.equals(tagName)) {
OssSubmitTarget target = (OssSubmitTarget)XmlKit.readXMLable(xmLableReader);
targets.add(target);
}
}
}
});
}
}
@Override
public void writeXML(XMLPrintWriter writer) {
for (OssSubmitTarget target : targets) {
XmlKit.writeXMLable(writer, target, OssSubmitTarget.XML_TAG);
}
}
@Override
public Object clone() throws CloneNotSupportedException {
OssSubmitTargetConfig cloned = (OssSubmitTargetConfig) super.clone();
List<OssSubmitTarget> list = new ArrayList<OssSubmitTarget>();
for (OssSubmitTarget target : targets) {
list.add((OssSubmitTarget) target.clone());
}
cloned.targets = list;
return cloned;
}
}