|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.util.Observable
org.openstreetmap.josm.gui.conflict.pair.properties.PropertiesMergeModel
public class PropertiesMergeModel
This is the model for resolving conflicts in the properties of the
OsmPrimitives. In particular, it represents conflicts in the coordinates of Nodes and
the deleted or visible state of OsmPrimitives.
This model is an Observable. It notifies registered Observers whenever the
internal state changes.
This model also emits property changes for RESOLVED_COMPLETELY_PROP. Property change
listeners may register themselves using addPropertyChangeListener(PropertyChangeListener).
Node.getCoor(),
AbstractPrimitive.isDeleted(),
AbstractPrimitive.isVisible()| Field Summary | |
|---|---|
private MergeDecisionType |
coordMergeDecision
|
static java.lang.String |
DELETE_PRIMITIVE_PROP
|
private MergeDecisionType |
deletedMergeDecision
|
private OsmPrimitive |
my
|
private LatLon |
myCoords
|
private boolean |
myDeletedState
|
private java.util.List<OsmPrimitive> |
myReferrers
|
static java.lang.String |
RESOLVED_COMPLETELY_PROP
|
private java.lang.Boolean |
resolvedCompletely
|
private java.beans.PropertyChangeSupport |
support
|
private LatLon |
theirCoords
|
private boolean |
theirDeletedState
|
private java.util.List<OsmPrimitive> |
theirReferrers
|
| Constructor Summary | |
|---|---|
PropertiesMergeModel()
|
|
| Method Summary | |
|---|---|
void |
addPropertyChangeListener(java.beans.PropertyChangeListener listener)
|
java.util.List<Command> |
buildResolveCommand(Conflict<? extends OsmPrimitive> conflict)
Builds the command(s) to apply the conflict resolutions to my primitive |
void |
decideCoordsConflict(MergeDecisionType decision)
Decides a conflict between local and server coordinates |
void |
decideDeletedStateConflict(MergeDecisionType decision)
decides the conflict between two deleted states |
void |
fireCompletelyResolved()
|
LatLon |
getMergedCoords()
replies the coordinates of the merged OsmPrimitive. |
java.lang.Boolean |
getMergedDeletedState()
Replies deleted state of combined dataset |
private boolean |
getMergedDeletedState(MergeDecisionType decision)
|
LatLon |
getMyCoords()
replies the coordinates of my OsmPrimitive. |
java.lang.Boolean |
getMyDeletedState()
Replies deleted state of local dataset |
OsmPrimitive |
getMyPrimitive()
|
java.util.List<OsmPrimitive> |
getMyReferrers()
Returns local referrers |
LatLon |
getTheirCoords()
replies the coordinates of their OsmPrimitive. |
java.lang.Boolean |
getTheirDeletedState()
Replies deleted state of Server dataset |
java.util.List<OsmPrimitive> |
getTheirReferrers()
Returns server referrers |
boolean |
hasCoordConflict()
replies true if my and their primitive have a conflict between their coordinate values |
boolean |
hasDeletedStateConflict()
replies true if my and their primitive have a conflict between their deleted states |
boolean |
isCoordMergeDecision(MergeDecisionType decision)
replies true if the current decision for the coordinate conflict is decision |
boolean |
isDecidedCoord()
replies true if there is a coordinate conflict and if this conflict is resolved |
boolean |
isDecidedDeletedState()
replies true if there is a conflict in the deleted state and if this conflict is resolved |
boolean |
isDeletedStateDecision(MergeDecisionType decision)
replies true if the current decision for the deleted state conflict is decision |
boolean |
isResolvedCompletely()
replies true if all conflict in this model are resolved |
void |
populate(Conflict<? extends OsmPrimitive> conflict)
Populates the model with the differences between local and server version |
void |
removePropertyChangeListener(java.beans.PropertyChangeListener listener)
|
| Methods inherited from class java.util.Observable |
|---|
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final java.lang.String RESOLVED_COMPLETELY_PROP
public static final java.lang.String DELETE_PRIMITIVE_PROP
private OsmPrimitive my
private LatLon myCoords
private LatLon theirCoords
private MergeDecisionType coordMergeDecision
private boolean myDeletedState
private boolean theirDeletedState
private java.util.List<OsmPrimitive> myReferrers
private java.util.List<OsmPrimitive> theirReferrers
private MergeDecisionType deletedMergeDecision
private final java.beans.PropertyChangeSupport support
private java.lang.Boolean resolvedCompletely
| Constructor Detail |
|---|
public PropertiesMergeModel()
| Method Detail |
|---|
public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
public void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
public void fireCompletelyResolved()
public boolean isDecidedCoord()
public boolean isDecidedDeletedState()
public boolean isCoordMergeDecision(MergeDecisionType decision)
decision
decision;
false, otherwisepublic boolean isDeletedStateDecision(MergeDecisionType decision)
decision
decision;
false, otherwisepublic void populate(Conflict<? extends OsmPrimitive> conflict)
conflict - The conflict informationpublic LatLon getMyCoords()
OsmPrimitive. null, if my primitive hasn't
coordinates (i.e. because it is a Way).
OsmPrimitive. null, if my primitive hasn't
coordinates (i.e. because it is a Way).public LatLon getTheirCoords()
OsmPrimitive. null, if their primitive hasn't
coordinates (i.e. because it is a Way).
OsmPrimitive. null, if my primitive hasn't
coordinates (i.e. because it is a Way).public LatLon getMergedCoords()
OsmPrimitive. null, if the current primitives
have no coordinates or if the conflict is yet MergeDecisionType.UNDECIDED
OsmPrimitive. null, if the current primitives
have no coordinates or if the conflict is yet MergeDecisionType.UNDECIDEDpublic void decideCoordsConflict(MergeDecisionType decision)
decision - the decisionpublic java.lang.Boolean getMyDeletedState()
public java.lang.Boolean getTheirDeletedState()
public java.lang.Boolean getMergedDeletedState()
public java.util.List<OsmPrimitive> getMyReferrers()
public java.util.List<OsmPrimitive> getTheirReferrers()
private boolean getMergedDeletedState(MergeDecisionType decision)
public void decideDeletedStateConflict(MergeDecisionType decision)
throws java.lang.IllegalArgumentException
decision - the decision (must not be null)
java.lang.IllegalArgumentException - thrown, if decision is nullpublic boolean hasCoordConflict()
public boolean hasDeletedStateConflict()
true if my and their primitive have a conflict between
their deleted statespublic boolean isResolvedCompletely()
true if all conflict in this model are resolved; false otherwisepublic java.util.List<Command> buildResolveCommand(Conflict<? extends OsmPrimitive> conflict)
conflict - The conflict information
public OsmPrimitive getMyPrimitive()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||