RCP: X.X, simplify TXMResult persistable variables
- make userPersistable a parameter (see example below)
2a) replace
class TXMResult:
/**
* Internal persistable state.
*/
protected boolean internalPersistable;
/**
* User persistable state.
*/
protected boolean userPersistable;
With:
class TXMResult:
/**
* persistable state.
*/
@Parameter(key = TXMPreferences.PERSISTABLE, type = Parameter.INTERNAL)
protected boolean persistable;
/** re-implement this methods if your result must always is persistable **/
public boolean isInternalPersistable() { return false; }
...
class Partition:
public boolean isInternalPersistable() { return true; }
and find a way to a TXMResult command to tell when it was set persistable at creation time
2b) Current state
Sets the member to true in the constructor of class that needs to be always persisted, eg.:
/**
*
* @param partition
*/
public Part(Partition partition, String partName, String query) {
super(partition);
this.userName = partName;
this.pQuery = new CQLQuery(query);
this.pID = CqpObject.partNamePrefix + CQPCorpus.getNextSubcorpusCounter();
this.setVisible(false);
this.internalPersistable = true;
}
(from redmine: issue id 2687, created on 2019/12/03 by Matthieu Decorde)