forked from JabRef/jabref
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Rename CrossingKeys to TexBibEntriesResolver and fix minor issues
- Loading branch information
1 parent
38cec96
commit 568d0a5
Showing
7 changed files
with
208 additions
and
238 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
157 changes: 0 additions & 157 deletions
157
src/main/java/org/jabref/model/texparser/CrossingKeysResult.java
This file was deleted.
Oops, something went wrong.
125 changes: 125 additions & 0 deletions
125
src/main/java/org/jabref/model/texparser/TexBibEntriesResolverResult.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,125 @@ | ||
package org.jabref.model.texparser; | ||
|
||
import java.util.ArrayList; | ||
import java.util.List; | ||
import java.util.Objects; | ||
import java.util.Set; | ||
import java.util.StringJoiner; | ||
|
||
import org.jabref.model.database.BibDatabase; | ||
import org.jabref.model.entry.BibEntry; | ||
|
||
import com.google.common.collect.Multimap; | ||
|
||
public class TexBibEntriesResolverResult { | ||
|
||
private final TexParserResult texParserResult; | ||
private final List<String> unresolvedKeys; | ||
private final List<BibEntry> newEntries; | ||
private int crossRefsCount; | ||
|
||
public TexBibEntriesResolverResult(TexParserResult texParserResult) { | ||
this.texParserResult = texParserResult; | ||
this.unresolvedKeys = new ArrayList<>(); | ||
this.newEntries = new ArrayList<>(); | ||
this.crossRefsCount = 0; | ||
} | ||
|
||
public TexParserResult getTexParserResult() { | ||
return texParserResult; | ||
} | ||
|
||
public List<String> getUnresolvedKeys() { | ||
return unresolvedKeys; | ||
} | ||
|
||
public List<BibEntry> getNewEntries() { | ||
return newEntries; | ||
} | ||
|
||
public int getCrossRefsCount() { | ||
return crossRefsCount; | ||
} | ||
|
||
/** | ||
* Return the citations multimap from the TexParserResult object. | ||
*/ | ||
public Multimap<String, Citation> getCitations() { | ||
return texParserResult.getCitations(); | ||
} | ||
|
||
/** | ||
* Return a set of strings with the keys of the citations multimap from the TexParserResult object. | ||
*/ | ||
public Set<String> getCitationsKeySet() { | ||
return texParserResult.getCitationsKeySet(); | ||
} | ||
|
||
/** | ||
* Add an unresolved key to the list. | ||
*/ | ||
public void addUnresolvedKey(String key) { | ||
unresolvedKeys.add(key); | ||
} | ||
|
||
/** | ||
* Check if an entry with the given key is present in the list of new entries. | ||
*/ | ||
public boolean checkEntryNewDatabase(String key) { | ||
return newEntries.stream().anyMatch(e -> e.getCiteKeyOptional().get().equals(key)); | ||
} | ||
|
||
/** | ||
* Add 1 to the cross references counter. | ||
*/ | ||
public void increaseCrossRefsCount() { | ||
crossRefsCount++; | ||
} | ||
|
||
/** | ||
* Insert into the list of new entries an entry with the given key. | ||
*/ | ||
public void insertEntry(BibDatabase masterDatabase, String key) { | ||
insertEntry(masterDatabase.getEntryByKey(key).get()); | ||
} | ||
|
||
/** | ||
* Insert into the list of new entries the given entry. | ||
*/ | ||
public void insertEntry(BibEntry entry) { | ||
newEntries.add(entry); | ||
} | ||
|
||
@Override | ||
public String toString() { | ||
return new StringJoiner(", ", this.getClass().getSimpleName() + "[", "]") | ||
.add("texParserResult = " + texParserResult) | ||
.add("unresolvedKeys = " + unresolvedKeys) | ||
.add("newEntries = " + newEntries) | ||
.add("crossRefsCount = " + crossRefsCount) | ||
.toString(); | ||
} | ||
|
||
@Override | ||
public boolean equals(Object o) { | ||
if (this == o) { | ||
return true; | ||
} | ||
|
||
if (o == null || getClass() != o.getClass()) { | ||
return false; | ||
} | ||
|
||
TexBibEntriesResolverResult that = (TexBibEntriesResolverResult) o; | ||
|
||
return Objects.equals(texParserResult, that.texParserResult) | ||
&& Objects.equals(unresolvedKeys, that.unresolvedKeys) | ||
&& Objects.equals(newEntries, that.newEntries) | ||
&& Objects.equals(crossRefsCount, that.crossRefsCount); | ||
} | ||
|
||
@Override | ||
public int hashCode() { | ||
return Objects.hash(texParserResult, unresolvedKeys, newEntries, crossRefsCount); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.