Top Fields Constructors Methods
org.jabref.model.metadata

public Class MetaData

extends Object
Class Inheritance
Annotations
@AllowedToUseLogic:because it needs access to citation pattern and cleanups
Imports
java.nio.charset.Charset, java.nio.file.Path, java.util.Collections, .HashMap, .List, .Map, .Objects, .Optional, .SortedSet, javafx.beans.property.ObjectProperty, .SimpleObjectProperty, org.jabref.architecture.AllowedToUseLogic, org.jabref.logic.citationkeypattern.AbstractCitationKeyPatterns, .CitationKeyPattern, .DatabaseCitationKeyPatterns, .GlobalCitationKeyPatterns, org.jabref.logic.cleanup.FieldFormatterCleanups, org.jabref.model.database.BibDatabaseMode, org.jabref.model.database.event.ChangePropagation, org.jabref.model.entry.field.Field, org.jabref.model.entry.types.EntryType, org.jabref.model.groups.GroupTreeNode, org.jabref.model.groups.event.GroupUpdatedEvent, org.jabref.model.metadata.event.MetaDataChangedEvent, com.google.common.eventbus.EventBus, com.tobiasdiez.easybind.optional.OptionalBinding, com.tobiasdiez.easybind.optional.OptionalWrapper, org.slf4j.Logger, .LoggerFactory

Field Summary

Modifier and TypeField and Description
public static final String
private final Map<EntryType, String>
private final ContentSelectors
public static final String
private String
private String
private Charset
private boolean
public static final String
public static final char
private final EventBus
public static final String
public static final String
private final ObjectProperty<GroupTreeNode>
private final com.tobiasdiez.easybind.optional.OptionalBinding<GroupTreeNode>
public static final String
public static final String
private boolean
private boolean
public static final String
private final Map<String, Path>
private static final Logger
public static final String
private BibDatabaseMode
public static final String
public static final String
public static final String
public static final String
private FieldFormatterCleanups
private SaveOrder
public static final String
public static final char
public static final String
private final Map<String, List<String>>
private final Map<String, String>
public static final String
private String

Constructor Summary

AccessConstructor and Description
public
MetaData()

Constructs an empty metadata.

Method Summary

Modifier and TypeMethod and Description
public void
public void
public void
public void
public void
public void
public void
public boolean
equals(Object
the reference object with which to compare.
o
)

Overrides java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.

public AbstractCitationKeyPatterns

Returns:

the stored label patterns
getCiteKeyPatterns
(GlobalCitationKeyPatterns globalPatterns)

public ContentSelectors
public SortedSet<ContentSelector>
public List<String>
public Optional<String>
public Optional<String>
public Optional<Charset>
getEncoding()

Returns the encoding used during parsing.

public boolean
public Optional<GroupTreeNode>
public Map<String, Path>
public Optional<Path>
public Optional<BibDatabaseMode>
public Optional<FieldFormatterCleanups>
public Optional<SaveOrder>
public Map<String, List<String>>
public Map<String, String>
public Optional<String>
public Optional<String>
public com.tobiasdiez.easybind.optional.OptionalBinding<GroupTreeNode>
public int
hashCode()

Overrides java.lang.Object.hashCode.

Returns a hash code value for this object.

public boolean
public boolean
public void
public void
private void
public void
public void
public void
setCiteKeyPattern(AbstractCitationKeyPatterns
the key patterns to update to.
A reference to this object is stored internally and is returned at getCiteKeyPattern();
bibtexKeyPatterns
)

Updates the stored key patterns to the given key patterns.

public void
public void
public void
setEncoding(Charset encoding)

public void
setEncoding(Charset encoding, ChangePropagation postChanges)

This method (with additional parameter) has been introduced to avoid event loops while saving a database.

public void
setEncodingExplicitlySupplied(boolean encodingExplicitlySupplied)

Sets the indication whether the encoding was set using "% Encoding: ..." or whether it was detected "magically"

public void
setEventPropagation(boolean enabled)

If disabled MetaDataChangedEvent will not be posted.

public void
setGroups(GroupTreeNode root)

Sets a new group root node

Warning

This invalidates everything returned by getGroups() so far!!!

public void
public void
public void
public void
public void
public void
public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.

public void
Inherited from java.lang.Object:
clonefinalizegetClassnotifynotifyAllwaitwaitwait

Field Detail

BIBDESK_STATIC_FLAGback to summary
public static final String BIBDESK_STATIC_FLAG
citeKeyPatternsback to summary
private final Map<EntryType, String> citeKeyPatterns
contentSelectorsback to summary
private final ContentSelectors contentSelectors
DATABASE_TYPEback to summary
public static final String DATABASE_TYPE
defaultCiteKeyPatternback to summary
private String defaultCiteKeyPattern
defaultFileDirectoryback to summary
private String defaultFileDirectory
encodingback to summary
private Charset encoding
encodingExplicitlySuppliedback to summary
private boolean encodingExplicitlySupplied
ENTRYTYPE_FLAGback to summary
public static final String ENTRYTYPE_FLAG
ESCAPE_CHARACTERback to summary
public static final char ESCAPE_CHARACTER
eventBusback to summary
private final EventBus eventBus
FILE_DIRECTORYback to summary
public static final String FILE_DIRECTORY
FILE_DIRECTORY_LATEXback to summary
public static final String FILE_DIRECTORY_LATEX
groupsRootback to summary
private final ObjectProperty<GroupTreeNode> groupsRoot
groupsRootBindingback to summary
private final com.tobiasdiez.easybind.optional.OptionalBinding<GroupTreeNode> groupsRootBinding
GROUPSTREEback to summary
public static final String GROUPSTREE
GROUPSTREE_LEGACYback to summary
public static final String GROUPSTREE_LEGACY
isEventPropagationEnabledback to summary
private boolean isEventPropagationEnabled
isProtectedback to summary
private boolean isProtected
KEYPATTERNDEFAULTback to summary
public static final String KEYPATTERNDEFAULT
laTexFileDirectoryback to summary
private final Map<String, Path> laTexFileDirectory
LOGGERback to summary
private static final Logger LOGGER
META_FLAGback to summary
public static final String META_FLAG
modeback to summary
private BibDatabaseMode mode
PREFIX_KEYPATTERNback to summary
public static final String PREFIX_KEYPATTERN
PROTECTED_FLAG_METAback to summary
public static final String PROTECTED_FLAG_META
SAVE_ACTIONSback to summary
public static final String SAVE_ACTIONS
SAVE_ORDER_CONFIGback to summary
public static final String SAVE_ORDER_CONFIG
saveActionsback to summary
private FieldFormatterCleanups saveActions
saveOrderback to summary
private SaveOrder saveOrder
SELECTOR_META_PREFIXback to summary
public static final String SELECTOR_META_PREFIX
SEPARATOR_CHARACTERback to summary
public static final char SEPARATOR_CHARACTER
SEPARATOR_STRINGback to summary
public static final String SEPARATOR_STRING
unknownMetaDataback to summary
private final Map<String, List<String>> unknownMetaData
userFileDirectoryback to summary
private final Map<String, String> userFileDirectory
VERSION_DB_STRUCTback to summary
public static final String VERSION_DB_STRUCT
versionDBStructureback to summary
private String versionDBStructure

Constructor Detail

MetaDataback to summary
public MetaData()

Constructs an empty metadata.

Method Detail

addContentSelectorback to summary
public void addContentSelector(ContentSelector contentSelector)
clearContentSelectorsback to summary
public void clearContentSelectors(Field field)
clearDefaultFileDirectoryback to summary
public void clearDefaultFileDirectory()
clearLatexFileDirectoryback to summary
public void clearLatexFileDirectory(String user)
clearSaveActionsback to summary
public void clearSaveActions()
clearSaveOrderback to summary
public void clearSaveOrder()
clearUserFileDirectoryback to summary
public void clearUserFileDirectory(String user)
equalsback to summary
public boolean equals(Object o)

Overrides java.lang.Object.equals.

Doc from java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
o:Object

the reference object with which to compare.

Returns:boolean

true if this object is the same as the obj argument; false otherwise.

Annotations
@Override
getCiteKeyPatternsback to summary
public AbstractCitationKeyPatterns getCiteKeyPatterns(GlobalCitationKeyPatterns globalPatterns)
Returns:AbstractCitationKeyPatterns

the stored label patterns

getContentSelectorsback to summary
public ContentSelectors getContentSelectors()
getContentSelectorsSortedback to summary
public SortedSet<ContentSelector> getContentSelectorsSorted()
getContentSelectorValuesForFieldback to summary
public List<String> getContentSelectorValuesForField(Field field)
getDefaultCiteKeyPatternback to summary
public Optional<String> getDefaultCiteKeyPattern()
getDefaultFileDirectoryback to summary
public Optional<String> getDefaultFileDirectory()
getEncodingback to summary
public Optional<Charset> getEncoding()

Returns the encoding used during parsing.

getEncodingExplicitlySuppliedback to summary
public boolean getEncodingExplicitlySupplied()
getGroupsback to summary
public Optional<GroupTreeNode> getGroups()
getLatexFileDirectoriesback to summary
public Map<String, Path> getLatexFileDirectories()
getLatexFileDirectoryback to summary
public Optional<Path> getLatexFileDirectory(String user)
getModeback to summary
public Optional<BibDatabaseMode> getMode()
getSaveActionsback to summary
public Optional<FieldFormatterCleanups> getSaveActions()
getSaveOrderback to summary
public Optional<SaveOrder> getSaveOrder()
getUnknownMetaDataback to summary
public Map<String, List<String>> getUnknownMetaData()
getUserFileDirectoriesback to summary
public Map<String, String> getUserFileDirectories()
getUserFileDirectoryback to summary
public Optional<String> getUserFileDirectory(String user)
getVersionDBStructureback to summary
public Optional<String> getVersionDBStructure()
groupsBindingback to summary
public com.tobiasdiez.easybind.optional.OptionalBinding<GroupTreeNode> groupsBinding()
hashCodeback to summary
public int hashCode()

Overrides java.lang.Object.hashCode.

Doc from java.lang.Object.hashCode.

Returns a hash code value for this object. This method is supported for the benefit of hash tables such as those provided by java.util.HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
Returns:int

a hash code value for this object

Annotations
@Override
isEmptyback to summary
public boolean isEmpty()
isProtectedback to summary
public boolean isProtected()
markAsNotProtectedback to summary
public void markAsNotProtected()
markAsProtectedback to summary
public void markAsProtected()
postChangeback to summary
private void postChange()

Posts a new MetaDataChangedEvent on the EventBus.

putUnknownMetaDataItemback to summary
public void putUnknownMetaDataItem(String key, List<String> value)
registerListenerback to summary
public void registerListener(Object listener)
setCiteKeyPatternback to summary
public void setCiteKeyPattern(AbstractCitationKeyPatterns bibtexKeyPatterns)

Updates the stored key patterns to the given key patterns.

Parameters
bibtexKeyPatterns:AbstractCitationKeyPatterns

the key patterns to update to.
A reference to this object is stored internally and is returned at getCiteKeyPattern();

setCiteKeyPatternback to summary
public void setCiteKeyPattern(CitationKeyPattern defaultValue, Map<EntryType, CitationKeyPattern> nonDefaultPatterns)
setDefaultFileDirectoryback to summary
public void setDefaultFileDirectory(String path)
setEncodingback to summary
public void setEncoding(Charset encoding)
setEncodingback to summary
public void setEncoding(Charset encoding, ChangePropagation postChanges)

This method (with additional parameter) has been introduced to avoid event loops while saving a database.

setEncodingExplicitlySuppliedback to summary
public void setEncodingExplicitlySupplied(boolean encodingExplicitlySupplied)

Sets the indication whether the encoding was set using "% Encoding: ..." or whether it was detected "magically"

setEventPropagationback to summary
public void setEventPropagation(boolean enabled)

If disabled MetaDataChangedEvent will not be posted.

setGroupsback to summary
public void setGroups(GroupTreeNode root)

Sets a new group root node

Warning

This invalidates everything returned by getGroups() so far!!!

setLatexFileDirectoryback to summary
public void setLatexFileDirectory(String user, Path path)
setModeback to summary
public void setMode(BibDatabaseMode mode)
setSaveActionsback to summary
public void setSaveActions(FieldFormatterCleanups saveActions)
setSaveOrderback to summary
public void setSaveOrder(SaveOrder saveOrder)
setUserFileDirectoryback to summary
public void setUserFileDirectory(String user, String path)
setVersionDBStructureback to summary
public void setVersionDBStructure(String version)
toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object. Satisfying this method's contract implies a non-null result must be returned.

Returns:String

a string representation of the object

Annotations
@Override
unregisterListenerback to summary
public void unregisterListener(Object listener)