Hallo,
ich lade ein JSON um folgende Klasse zu erstellen:
When ich nun das JSON lade, feuert mir nicht das "PropertyChangeSupport".
Hierfür habe ich den "InstanceCreator" hinzuegfügt.
Aber wenn ich das JSON lade, feuert mir die Methode "createInstance" nicht.
Mach ich etwas falsch?
Danke!
ich lade ein JSON um folgende Klasse zu erstellen:
Java:
public class Product implements InstanceCreator<Product> {
private transient final PropertyChangeSupport pcs = new PropertyChangeSupport(this);
public void addPropertyChangeListener(PropertyChangeListener listener) {
this.pcs.addPropertyChangeListener(listener);
}
public void removePropertyChangeListener(PropertyChangeListener listener) {
this.pcs.removePropertyChangeListener(listener);
}
public Product() {
// init
setCanBeSold(true);
setCanBePurchased(true);
setBuy(true);
setTracking(EnumTracking.none);
}
private transient Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSX").disableHtmlEscaping()
.create();
private String productName = "";
private boolean canBeSold;
private boolean canBePurchased;
/**
* @return the productName
*/
public String getProductName() {
return productName;
}
/**
* @param productName the productName to set
*/
public void setProductName(String productName) {
this.pcs.firePropertyChange("productName", this.productName, productName);
this.productName = productName;
}
/**
* @return the canBeSold
*/
public boolean isCanBeSold() {
return canBeSold;
}
/**
* @param canBeSold the canBeSold to set
*/
public void setCanBeSold(boolean canBeSold) {
this.pcs.firePropertyChange("canBeSold", this.canBeSold, canBeSold);
this.canBeSold = canBeSold;
}
...
@Override
public Product createInstance(Type arg0) {
return new Product();
}
When ich nun das JSON lade, feuert mir nicht das "PropertyChangeSupport".
Hierfür habe ich den "InstanceCreator" hinzuegfügt.
Aber wenn ich das JSON lade, feuert mir die Methode "createInstance" nicht.
Mach ich etwas falsch?
Danke!