package forscher.nocket.page.gen;
import gengui.annotations.Disabled;
import gengui.annotations.Eager;
import java.io.File;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.TimeUnit;
public class Merge implements Serializable {
private String ichBinEinFeld;
private SpezialTabellenZeile[] tabelle;
private MergeInner inner;
public Merge() {
inner = new MergeInner();
tabelle = new SpezialTabellenZeile[3];
tabelle[0] = new SpezialTabellenZeile(true, null);
tabelle[0].setSpalte1("1,1");
tabelle[0].setSpalte2("2,1");
tabelle[0].setSpalte3(TimeUnit.DAYS);
tabelle[0].setFile(new File("un/be.kannt"));
tabelle[1] = new SpezialTabellenZeile(false, new SerializableCallback() {
@Override
public void run() {
setIchBinEinFeld("tabellenzeile 2 wurde angeklickt!");
}
});
tabelle[1].setSpalte1("1,2");
tabelle[1].setSpalte2("2,2");
tabelle[1].setSpalte3(TimeUnit.HOURS);
tabelle[1].setFile(new File("resources/webapp/img/wicket.png"));
tabelle[2] = new SpezialTabellenZeile(false, new SerializableCallback() {
@Override
public void run() {
setIchBinEinFeld("tabellenzeile 3 wurde angeklickt!");
}
});
tabelle[2].setSpalte1("1,3");
tabelle[2].setSpalte2("2,3");
tabelle[2].setSpalte3(null);
}
private abstract class SerializableCallback implements Runnable, Serializable {
}
public String getIchBinEinFeld() {
return ichBinEinFeld;
}
@Eager
public void setIchBinEinFeld(String value) {
ichBinEinFeld = value;
}
public String getIchBinDasSelbeFeldReadOnly() {
return ichBinEinFeld;
}
public String getIchBinDasSelbeFeldDasZweiteMalReadOnly() {
return ichBinEinFeld;
}
@Disabled
public void setIchBinDasSelbeFeldDasZweiteMalReadOnly(String value) {
ichBinEinFeld = value;
}
public String getIchBinDasSelbeFeldDasDritteMalReadOnly() {
return ichBinEinFeld;
}
public void setIchBinDasSelbeFeldDasDritteMalReadOnly(String value) {
ichBinEinFeld = value;
}
public String disableIchBinDasSelbeFeldDasDritteMalReadOnly() {
return "weils so is...";
}
public SpezialTabellenZeile[] getTabelle() {
return tabelle;
}
public MergeInner getInner() {
return inner;
}
public SpezialTabellenZeile[] getTabelle2() {
return tabelle;
}
public void removeFromTabelle(SpezialTabellenZeile... zeilen) {
List<SpezialTabellenZeile> retained = new ArrayList<SpezialTabellenZeile>(Arrays.asList(getTabelle()));
for (SpezialTabellenZeile zeile : zeilen) {
retained.remove(zeile);
}
tabelle = retained.toArray(new SpezialTabellenZeile[0]);
}
// public void removeFromTabelle(SpezialTabellenZeile zeile) {
// List<SpezialTabellenZeile> retained = new ArrayList<SpezialTabellenZeile>(Arrays.asList(getTabelle()));
// retained.remove(zeile);
// tabelle = retained.toArray(new SpezialTabellenZeile[0]);
// }
}