扩展图表示例。
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.
 
 

130 lines
3.7 KiB

package com.fr.plugin.demo.fun;
import com.fr.extended.chart.AbstractDataConfig;
import com.fr.extended.chart.ExtendedField;
import com.fr.stable.AssistUtils;
import com.fr.stable.xml.XMLPrintWriter;
import com.fr.stable.xml.XMLableReader;
/**
* Created by shine on 2018/3/24.
*/
public class DemoDataConfig extends AbstractDataConfig {
private ExtendedField x = new ExtendedField();
private String targetName;
private ExtendedField y = new ExtendedField();
private ExtendedField z = new ExtendedField();
private ExtendedField expect = new ExtendedField();
private ExtendedField actual = new ExtendedField();
public ExtendedField getX() {
return x;
}
public void setX(ExtendedField x) {
this.x = x;
}
public ExtendedField getY() {
return y;
}
public void setY(ExtendedField y) {
this.y = y;
}
public ExtendedField getZ() {
return z;
}
public void setZ(ExtendedField z) {
this.z = z;
}
public String getTargetName() {
return targetName;
}
public void setTargetName(String targetName) {
this.targetName = targetName;
}
public ExtendedField getExpect() {
return expect;
}
public void setExpect(ExtendedField expect) {
this.expect = expect;
}
public ExtendedField getActual() {
return actual;
}
public void setActual(ExtendedField actual) {
this.actual = actual;
}
@Override
protected void readAttr(XMLableReader reader) {
readExtendedField(x, "x", reader);
this.setTargetName(reader.getAttrAsString("targetName", ""));
readExtendedField(y, "y", reader);
readExtendedField(z, "z", reader);
readExtendedField(expect, "expect", reader);
readExtendedField(actual, "actual", reader);
}
@Override
protected void writeAttr(XMLPrintWriter writer) {
writeExtendedField(x, "x", writer);
writer.attr("targetName", this.getTargetName());
writeExtendedField(y, "y", writer);
writeExtendedField(z, "z", writer);
writeExtendedField(expect, "expect", writer);
writeExtendedField(actual, "actual", writer);
}
@Override
public ExtendedField[] dataSetFields() {
return new ExtendedField[]{
x,
y,
z,
expect,
actual
};
}
@Override
public DemoDataConfig clone() throws CloneNotSupportedException {
DemoDataConfig result = (DemoDataConfig)super.clone();
result.setX(this.getX().clone());
result.setTargetName(this.getTargetName());
result.setY(this.getY().clone());
result.setZ(this.getZ().clone());
result.setExpect(this.getExpect().clone());
result.setActual(this.getActual().clone());
return result;
}
@Override
public int hashCode() {
return super.hashCode() + AssistUtils.hashCode(this.getX(), this.getY(), this.getZ(),
this.getTargetName(), this.getExpect(), this.getActual());
}
@Override
public boolean equals(Object obj) {
return obj instanceof DemoDataConfig
&& super.equals(obj)
&& AssistUtils.equals(this.getX(), ((DemoDataConfig) obj).getX())
&& AssistUtils.equals(this.getTargetName(), ((DemoDataConfig) obj).getTargetName())
&& AssistUtils.equals(this.getY(), ((DemoDataConfig) obj).getY())
&& AssistUtils.equals(this.getZ(), ((DemoDataConfig) obj).getZ())
&& AssistUtils.equals(this.getExpect(), ((DemoDataConfig) obj).getExpect())
&& AssistUtils.equals(this.getActual(), ((DemoDataConfig) obj).getActual());
}
}