Verified Owner
Top Inners Fields Constructors Methods
org.jabref.gui.preferences.ai

public Class AiTabViewModel

extends Object
implements PreferenceTabViewModel
Class Inheritance
All Implemented Interfaces
org.jabref.gui.preferences.PreferenceTabViewModel
Imports
java.util.ArrayList, .List, .Locale, .Objects, .OptionalInt, .OptionalLong, java.util.stream.Stream, javafx.beans.binding.Bindings, javafx.beans.property.BooleanProperty, .IntegerProperty, .ListProperty, .ObjectProperty, .ReadOnlyListProperty, .ReadOnlyObjectProperty, .ReadOnlyStringProperty, .SimpleBooleanProperty, .SimpleIntegerProperty, .SimpleListProperty, .SimpleObjectProperty, .SimpleStringProperty, .StringProperty, javafx.collections.FXCollections, javafx.scene.control.SpinnerValueFactory, org.jabref.gui.preferences.PreferenceTabViewModel, org.jabref.logic.ai.chatting.PredefinedChatModelUtil, org.jabref.logic.ai.embedding.EmbeddingModelMetadata, .EmbeddingModelMetadataService, org.jabref.logic.ai.models.AiModelService, .FetchAiModelsBackgroundTask, org.jabref.logic.ai.preferences.AiDefaultExpertSettings, .AiDefaultTemplates, .AiPreferences, org.jabref.logic.l10n.Localization, org.jabref.logic.util.BackgroundTask, .LocalizedNumbersUtils, .TaskExecutor, org.jabref.logic.util.strings.StringUtil, org.jabref.model.ai.llm.AiProvider, org.jabref.model.ai.pipeline.ResponseEngineKind, org.jabref.model.ai.summarization.SummarizatorKind, org.jabref.model.ai.tokenization.TokenEstimatorKind, de.saxsys.mvvmfx.utils.validation.FunctionBasedValidator, de.saxsys.mvvmfx.utils.validation.ObservableRuleBasedValidator, de.saxsys.mvvmfx.utils.validation.ValidationMessage, de.saxsys.mvvmfx.utils.validation.ValidationStatus, de.saxsys.mvvmfx.utils.validation.Validator, org.apache.commons.io.FileUtils, org.jspecify.annotations.Nullable, org.slf4j.Logger, .LoggerFactory

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static enum

Field Summary

Modifier and TypeField and Description
private final AiModelService
private final AiPreferences
aiPreferences

The live application preferences; only read in setValues() and written in storeSettings().

private final ListProperty<AiProvider>
private final de.saxsys.mvvmfx.utils.validation.Validator
private final de.saxsys.mvvmfx.utils.validation.Validator
private final BooleanProperty
private final BooleanProperty
private final ListProperty<String>
private final de.saxsys.mvvmfx.utils.validation.Validator
private final StringProperty
private final StringProperty
private final StringProperty
private final StringProperty
connectionTestDetails

Details of the last failed connection test; empty otherwise.

private final ObjectProperty<AiTabViewModel.ConnectionTestState>
private final IntegerProperty
private final de.saxsys.mvvmfx.utils.validation.Validator
private final StringProperty
private final StringProperty
private final StringProperty
private final BooleanProperty
public static final int
private final BooleanProperty
private final BooleanProperty
private final BooleanProperty
private final BooleanProperty
private final BooleanProperty
private final IntegerProperty
private final de.saxsys.mvvmfx.utils.validation.Validator
private final IntegerProperty
private final de.saxsys.mvvmfx.utils.validation.Validator
private final EmbeddingModelMetadataService
private final ListProperty<String>
private final de.saxsys.mvvmfx.utils.validation.Validator
private final BooleanProperty
private final IntegerProperty
protected static SpinnerValueFactory<Integer>
private final StringProperty
private final StringProperty
private final StringProperty
private final StringProperty
private final BooleanProperty
private final StringProperty
private final StringProperty
private final StringProperty
private static final Logger
private final StringProperty
private final StringProperty
private final StringProperty
private final StringProperty
private final Locale
private final StringProperty
private final StringProperty
private final StringProperty
private final IntegerProperty
private final de.saxsys.mvvmfx.utils.validation.Validator
private final StringProperty
private final de.saxsys.mvvmfx.utils.validation.Validator
private final de.saxsys.mvvmfx.utils.validation.Validator
private final ObjectProperty<ResponseEngineKind>
private final ListProperty<ResponseEngineKind>
private final List<String>
private final ObjectProperty<AiProvider>
private final StringProperty
private final IntegerProperty
private final StringProperty
private final ObjectProperty<SummarizatorKind>
private final ListProperty<SummarizatorKind>
private final StringProperty
private final StringProperty
private final StringProperty
private final TaskExecutor
private final StringProperty
private final de.saxsys.mvvmfx.utils.validation.Validator
private final de.saxsys.mvvmfx.utils.validation.Validator
private final ObjectProperty<TokenEstimatorKind>
private final ListProperty<TokenEstimatorKind>
private final AiPreferences
workingAiPreferences

The dialog-scoped working copy shared with other tabs (see PreferencesDialogViewModel).

Constructor Summary

AccessConstructor and Description
public
AiTabViewModel(AiPreferences aiPreferences, AiPreferences workingAiPreferences, AiModelService aiModelService, TaskExecutor taskExecutor, EmbeddingModelMetadataService embeddingModelMetadataService)

Method Summary

Modifier and TypeMethod and Description
public ReadOnlyListProperty<AiProvider>
public StringProperty
public StringProperty
public BooleanProperty
public BooleanProperty
public ReadOnlyListProperty<String>
public StringProperty
public StringProperty
public StringProperty
public ReadOnlyStringProperty
public ReadOnlyObjectProperty<AiTabViewModel.ConnectionTestState>
public IntegerProperty
public BooleanProperty
public BooleanProperty
public BooleanProperty
public BooleanProperty
public BooleanProperty
public BooleanProperty
public IntegerProperty
public IntegerProperty
public ReadOnlyListProperty<String>
public BooleanProperty
public IntegerProperty
public StringProperty
public BooleanProperty
public de.saxsys.mvvmfx.utils.validation.ValidationStatus
public de.saxsys.mvvmfx.utils.validation.ValidationStatus
public de.saxsys.mvvmfx.utils.validation.ValidationStatus
public de.saxsys.mvvmfx.utils.validation.ValidationStatus
public de.saxsys.mvvmfx.utils.validation.ValidationStatus
public de.saxsys.mvvmfx.utils.validation.ValidationStatus
public de.saxsys.mvvmfx.utils.validation.ValidationStatus
public de.saxsys.mvvmfx.utils.validation.ValidationStatus
public de.saxsys.mvvmfx.utils.validation.ValidationStatus
public de.saxsys.mvvmfx.utils.validation.ValidationStatus
public List<String>
getRestartWarnings()

Overrides default org.jabref.gui.preferences.PreferenceTabViewModel.getRestartWarnings.

This method should be called after storing the preferences, to collect the properties, which require a restart of JabRef to load

public de.saxsys.mvvmfx.utils.validation.ValidationStatus
public de.saxsys.mvvmfx.utils.validation.ValidationStatus
public StringProperty
public IntegerProperty
public StringProperty
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public ListProperty<ResponseEngineKind>
public ObjectProperty<ResponseEngineKind>
public ObjectProperty<AiProvider>
public StringProperty
public IntegerProperty
public StringProperty
public StringProperty
public void
setValues()

Implements org.jabref.gui.preferences.PreferenceTabViewModel.setValues.

This method is called when the dialog is opened, or if it is made visible after being hidden.

public void
storeSettings()

Implements org.jabref.gui.preferences.PreferenceTabViewModel.storeSettings.

This method is called when the user presses OK in the Preferences dialog.

public ObjectProperty<SummarizatorKind>
public ListProperty<SummarizatorKind>
public StringProperty
public StringProperty
public StringProperty
public StringProperty
public void
public org.jabref.logic.util.BackgroundTask<String>
testConnectionTask()

Tests the connection with the values currently entered in the dialog, not the stored preferences.

public ObjectProperty<TokenEstimatorKind>
public ListProperty<TokenEstimatorKind>
private void
public boolean
public boolean
public boolean
validateSettings()

Overrides default org.jabref.gui.preferences.PreferenceTabViewModel.validateSettings.

This method is called before the storeSettings() method, to check if there are illegal settings in the tab, or if is ready to be closed.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait