Verified Owner
Top Fields Constructors Methods
org.jabref.gui.collab

public Class ExternalChangesResolverViewModel

extends AbstractViewModel
Class Inheritance
Imports
java.util.List, .Optional, javafx.beans.binding.Bindings, .BooleanExpression, javafx.beans.property.ObjectProperty, .ReadOnlyBooleanProperty, .ReadOnlyBooleanWrapper, .SimpleObjectProperty, javafx.collections.FXCollections, .ObservableList, org.jabref.gui.AbstractViewModel, org.jabref.gui.collab.entrychange.EntryChange, org.jspecify.annotations.NonNull

Field Summary

Modifier and TypeField and Description
private final ReadOnlyBooleanWrapper
private final ReadOnlyBooleanWrapper
private final ReadOnlyBooleanWrapper
private final BooleanExpression
private final ObservableList<DatabaseChange>
changes

Because visible changes list will be bound to the UI, certain changes can be removed.

private boolean
mergedResultDiffersFromDisk

Only a merge can leave a change accepted yet different from disk; accepted changes are the disk version by definition.

private final ObjectProperty<DatabaseChange>
private final ObservableList<DatabaseChange>

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public void
public void
public boolean
public ReadOnlyBooleanProperty
public boolean
public ReadOnlyBooleanProperty
public boolean
public ReadOnlyBooleanProperty
public BooleanExpression
public void
public List<DatabaseChange>
public Optional<DatabaseChange>
public ObservableList<DatabaseChange>
private boolean
public boolean
public ObjectProperty<DatabaseChange>
private void

Field Detail

areAllChangesAcceptedback to summary
private final ReadOnlyBooleanWrapper areAllChangesAccepted
areAllChangesDeniedback to summary
private final ReadOnlyBooleanWrapper areAllChangesDenied
areAllChangesResolvedback to summary
private final ReadOnlyBooleanWrapper areAllChangesResolved
canAskUserToResolveChangeback to summary
private final BooleanExpression canAskUserToResolveChange
changesback to summary
private final ObservableList<DatabaseChange> changes

Because visible changes list will be bound to the UI, certain changes can be removed. This list is used to keep track of changes even when they're removed from the UI and to expose the final resolved change set.

mergedResultDiffersFromDiskback to summary
private boolean mergedResultDiffersFromDisk

Only a merge can leave a change accepted yet different from disk; accepted changes are the disk version by definition.

selectedChangeback to summary
private final ObjectProperty<DatabaseChange> selectedChange
visibleChangesback to summary
private final ObservableList<DatabaseChange> visibleChanges

Constructor Detail

ExternalChangesResolverViewModelback to summary
public ExternalChangesResolverViewModel(@NonNull List<DatabaseChange> externalChanges)

Method Detail

acceptChangeback to summary
public void acceptChange()
acceptMergedChangeback to summary
public void acceptMergedChange(@NonNull DatabaseChange databaseChange)
areAllChangesAcceptedback to summary
public boolean areAllChangesAccepted()
areAllChangesAcceptedPropertyback to summary
public ReadOnlyBooleanProperty areAllChangesAcceptedProperty()
areAllChangesDeniedback to summary
public boolean areAllChangesDenied()
areAllChangesDeniedPropertyback to summary
public ReadOnlyBooleanProperty areAllChangesDeniedProperty()
areAllChangesResolvedback to summary
public boolean areAllChangesResolved()
areAllChangesResolvedPropertyback to summary
public ReadOnlyBooleanProperty areAllChangesResolvedProperty()
canAskUserToResolveChangePropertyback to summary
public BooleanExpression canAskUserToResolveChangeProperty()
denyChangeback to summary
public void denyChange()
getResolvedChangesback to summary
public List<DatabaseChange> getResolvedChanges()
getSelectedChangeback to summary
public Optional<DatabaseChange> getSelectedChange()
getVisibleChangesback to summary
public ObservableList<DatabaseChange> getVisibleChanges()
mergedChangeMatchesDiskVersionback to summary
private boolean mergedChangeMatchesDiskVersion(DatabaseChange oldChange, DatabaseChange mergedChange)
resolvedChangesMatchDiskback to summary
public boolean resolvedChangesMatchDisk()
selectedChangePropertyback to summary
public ObjectProperty<DatabaseChange> selectedChangeProperty()
updateResolutionStateback to summary
private void updateResolutionState()