Anwendungsdefiniertes Binding
Man kann in der Anwendung eigenes Binding definieren und mithilfe an der strukturwertigen Property annotieren:
@Binding(MyDataBinding.class)
MyData getMyData();
public class MyDataBinding extends AbstractConfigurationValueBinding<MyData> {
public static final MyDataBinding INSTANCE = new MyDataBinding();
private MyDataBinding() {
// Singleton constructor.
}
@Override
public MyData loadConfigItem(XMLStreamReader in, MyData baseValue) throws XMLStreamException, ConfigurationException {
MyData data = ...;
data.read(in);
return data;
}
@Override
public void saveConfigItem(XMLStreamWriter out, MyData data) throws XMLStreamException {
data.write(out);
}
}
Beim Implementieren der Methoden zum Parsen/Serialisieren des anwendungsdefinierten Typs (MyData
im Beispiel) sind die statischen Methoden der XMLStreamUtil
sehr hilfreich.