These are the post-processing steps applied to the original fetch from ArXiv's API:
| Modifier and Type | Class and Description |
|---|---|
| protected class | ArXivFetcher.
Fetcher for the arXiv. |
| Modifier and Type | Field and Description |
|---|---|
| private final ArXivFetcher. | |
| private static final Map | |
| private static final Set | |
| private static final Set | |
| private static final String | |
| private final DoiFetcher | |
| private final ImportFormatPreferences | |
| private static final Logger |
| Access | Constructor and Description |
|---|---|
| public | |
| public | ArXivFetcher(ImportFormatPreferences importFormatPreferences, DoiFetcher
The fetcher, maybe be NULL if no additional search is desired. doiFetcher)
|
| Modifier and Type | Method and Description |
|---|---|
| private void | adaptKeywordsFrom(BibEntry
A BibEntry to modify bibEntry)Remove duplicate values on "KEYWORD" field, if any. |
| public Optional | findFullText(BibEntry
The Bibtex entry entry)Implements org. Tries to find a fulltext URL for a given BibTex entry. |
| public Optional | findIdentifier(BibEntry
the entry)BibEntry for which an identifier should be foundImplements org. Looks for an identifier based on the information stored in the given |
| private static String | Returns: ArXiv-issued DOIAn ArXiv ID arXivId)Get ArXiv-issued DOI from the entry's arXiv ID ArXiv-issued DOIs are identifiers associated with every ArXiv entry. |
| private static Optional | Returns: ArXiv-issued DOI, or Empty, if method could not retrieve itA Bibtex Entry, formatted as a ArXiv entry. Must contain an EPRINT field arXivBibEntry)Get ArXiv-issued DOI from the arXiv entry itself. |
| private static String | Returns: ArXiv-issued DOIAn ArXiv ID as internal object arXivId)Get ArXiv-issued DOI from ArXiv Identifier object ArXiv-issued DOIs are identifiers associated with every ArXiv entry. |
| public Optional | getHelpPage()
Overrides default org. Returns the help page for this fetcher. |
| public String | getIdentifierName()
Implements org. Returns the name of the identifier that is returned by this fetcher. |
| private static Optional | Returns: User-issued DOI, if any field exists and if it's not an automatic one (seegetAutomaticDoi(ArXivIdentifier))An ArXiv Bibtex entry from where the DOI is extracted arXivBibEntry)Get user-issued DOI from ArXiv Bibtex entry, if any User-issued DOIs are identifiers associated with some ArXiv entries that can associate an entry with an external service, like Springer Link. |
| public String | getName()
Implements org. Returns the localized name of this fetcher. |
| public TrustLevel | getTrustLevel()
Overrides default org. Returns the level of trust for this fetcher. |
| private void | inplaceAsyncInfuseArXivWithDoi(BibEntry
An existing entry to be updated with new/modified fields arXivBibEntry)Infuse arXivBibEntryPromise with additional fields in an asynchronous way |
| private void | inplaceAsyncInfuseArXivWithDoi(CompletableFuture<Optional<BibEntry>>
A future entry that (if it exists) will be updated with new/modified fields arXivBibEntryFuture, Optional<ArXivIdentifier> An ArXiv ID for the main reference (from ArXiv), so that the retrieval of ArXiv-issued DOI metadata can be faster arXivId)Infuse arXivBibEntryFuture with additional fields in an asynchronous way, accelerating the process by providing a valid ArXiv ID |
| private static boolean | |
| private void | mergeArXivEntryWithFutureDoiEntry(BibEntry
The entry to merge into arXivEntry, CompletableFuture<Optional<BibEntry>> A future result of the fetching process bibEntryFuture, Set<Field> Which fields from "bibEntryFuture" to prioritize, replacing them on "arXivEntry" priorityFields, String Identifier used in initiating the "bibEntryFuture" future (for logging). This is usually a DOI, but can be anything. id)Eventually merge the ArXiv Bibtex entry with a Future Bibtex entry (ArXiv/user-assigned DOIs) |
| public Optional | performSearchById(String
a string which uniquely identifies the item identifier)Implements org. Looks for bibliographic information associated to the given identifier. |
| public Page | Returns: A list of entries matching the complex querythe root node of the lucene query luceneQuery,requested site number indexed from 0 pageNumber)Implements org. Constructs a complex query string using the field prefixes specified at https://arxiv.org/help/api/user-manual and modify resulting BibEntries with additional info from the ArXiv-issued DOI |
| private static Optional | Returns: the fetch resultA CompletableFuture that parallelize the API fetching process bibEntryFuture)Get the Bibtex Entry from a Future API request (uses blocking) and treat exceptions. |
| arXiv | back to summary |
|---|---|
| private final ArXivFetcher. | |
| ARXIV_KEYWORDS_WITH_COMMA_REPLACEMENTS | back to summary |
|---|---|
| private static final Map<String, String> ARXIV_KEYWORDS_WITH_COMMA_REPLACEMENTS | |
| CHOSEN_AUTOMATIC_DOI_FIELDS | back to summary |
|---|---|
| private static final Set<Field> CHOSEN_AUTOMATIC_DOI_FIELDS | |
| CHOSEN_MANUAL_DOI_FIELDS | back to summary |
|---|---|
| private static final Set<Field> CHOSEN_MANUAL_DOI_FIELDS | |
| DOI_PREFIX | back to summary |
|---|---|
| private static final String DOI_PREFIX | |
| doiFetcher | back to summary |
|---|---|
| private final DoiFetcher doiFetcher | |
| importFormatPreferences | back to summary |
|---|---|
| private final ImportFormatPreferences importFormatPreferences | |
| LOGGER | back to summary |
|---|---|
| private static final Logger LOGGER | |
| ArXivFetcher | back to summary |
|---|---|
| public ArXivFetcher(ImportFormatPreferences importFormatPreferences) | |
| ArXivFetcher | back to summary |
|---|---|
public ArXivFetcher(ImportFormatPreferences importFormatPreferences, DoiFetcher doiFetcher)
| |
| adaptKeywordsFrom | back to summary |
|---|---|
| private void adaptKeywordsFrom(BibEntry bibEntry) Remove duplicate values on "KEYWORD" field, if any. Al
| |
| findFullText | back to summary |
|---|---|
| public Optional Implements org. Doc from org. Tries to find a fulltext URL for a given BibTex entry.
| |
| findIdentifier | back to summary |
|---|---|
| public Optional Implements org. Doc from org. Looks for an identifier based on the information stored in the given | |
| getAutomaticDoi | back to summary |
|---|---|
| private static String getAutomaticDoi(String arXivId) Get ArXiv-issued DOI from the entry's arXiv ID
| |
| getAutomaticDoi | back to summary |
|---|---|
| private static Optional Get ArXiv-issued DOI from the arXiv entry itself.
| |
| getAutomaticDoi | back to summary |
|---|---|
| private static String getAutomaticDoi(ArXivIdentifier arXivId) Get ArXiv-issued DOI from ArXiv Identifier object
| |
| getHelpPage | back to summary |
|---|---|
| public Optional Overrides default org. Doc from org. Returns the help page for this fetcher. | |
| getIdentifierName | back to summary |
|---|---|
| public String getIdentifierName() Implements org. Doc from org. Returns the name of the identifier that is returned by this fetcher.
| |
| getManualDoi | back to summary |
|---|---|
| private static Optional Get user-issued DOI from ArXiv Bibtex entry, if any
| |
| getName | back to summary |
|---|---|
| public String getName() Implements org. Doc from org. Returns the localized name of this fetcher. The title can be used to display the fetcher in the menu and in the side pane. | |
| getTrustLevel | back to summary |
|---|---|
| public TrustLevel getTrustLevel() Overrides default org. Doc from org. Returns the level of trust for this fetcher. We distinguish between publishers and meta search engines for example.
| |
| inplaceAsyncInfuseArXivWithDoi | back to summary |
|---|---|
| private void inplaceAsyncInfuseArXivWithDoi(BibEntry arXivBibEntry) Infuse arXivBibEntryPromise with additional fields in an asynchronous way
| |
| inplaceAsyncInfuseArXivWithDoi | back to summary |
|---|---|
| private void inplaceAsyncInfuseArXivWithDoi(CompletableFuture<Optional<BibEntry>> arXivBibEntryFuture, Optional<ArXivIdentifier> arXivId) throws FetcherException Infuse arXivBibEntryFuture with additional fields in an asynchronous way, accelerating the process by providing a valid ArXiv ID
| |
| isManualDoi | back to summary |
|---|---|
| private static boolean isManualDoi(String doi) Check if a specific DOI is user-assigned. | |
| mergeArXivEntryWithFutureDoiEntry | back to summary |
|---|---|
| private void mergeArXivEntryWithFutureDoiEntry(BibEntry arXivEntry, CompletableFuture<Optional<BibEntry>> bibEntryFuture, Set<Field> priorityFields, String id) Eventually merge the ArXiv Bibtex entry with a Future Bibtex entry (ArXiv/user-assigned DOIs)
| |
| performSearchById | back to summary |
|---|---|
| public Optional Implements org. Doc from org. Looks for bibliographic information associated to the given identifier. | |
| performSearchPaged | back to summary |
|---|---|
| public Page Implements org. Constructs a complex query string using the field prefixes specified at https://arxiv.org/help/api/user-manual and modify resulting BibEntries with additional info from the ArXiv-issued DOI
| |
| waitForBibEntryRetrieval | back to summary |
|---|---|
| private static Optional Get the Bibtex Entry from a Future API request (uses blocking) and treat exceptions.
| |
Similar implementions: arxiv2bib which is live dspace-portalmec
| Modifier and Type | Class and Description |
|---|---|
| private static class |
| Modifier and Type | Field and Description |
|---|---|
| private static final String | |
| private static final DocumentBuilderFactory | |
| private final ImportFormatPreferences | |
| private static final Logger |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| protected CompletableFuture | |
| private Document | Returns: the response from the API as a XML document (Atom 1.0)the search query used to find articles;
details searchQuery, List<ArXivIdentifier> a list of arXiv identifiers ids, int the index of the first returned result (zero-based) start, int the number of maximal results (has to be smaller than 2000) maxResults)Queries the API. |
| private List | |
| public Optional | findFullText(BibEntry
The Bibtex entry entry)Implements org. Tries to find a fulltext URL for a given BibTex entry. |
| public Optional | findIdentifier(BibEntry
the entry)BibEntry for which an identifier should be foundImplements org. Looks for an identifier based on the information stored in the given |
| private FetcherException | |
| public Optional | getHelpPage()
Overrides default org. Returns the help page for this fetcher. |
| public String | getIdentifierName()
Implements org. Returns the name of the identifier that is returned by this fetcher. |
| public String | getName()
Implements org. Returns the localized name of this fetcher. |
| public TrustLevel | getTrustLevel()
Overrides default org. Returns the level of trust for this fetcher. |
| public Optional | performSearchById(String
a string which uniquely identifies the item identifier)Implements org. Looks for bibliographic information associated to the given identifier. |
| public Page | Returns: A list of entries matching the complex querythe root node of the lucene query luceneQuery,requested site number indexed from 0 pageNumber)Implements org. Constructs a complex query string using the field prefixes specified at https://arxiv.org/help/api/user-manual |
| private List | |
| private List | |
| private List | |
| private Optional | |
| private Optional |
| API_URL | back to summary |
|---|---|
| private static final String API_URL | |
| DOCUMENT_BUILDER_FACTORY | back to summary |
|---|---|
| private static final DocumentBuilderFactory DOCUMENT_BUILDER_FACTORY | |
| importFormatPreferences | back to summary |
|---|---|
| private final ImportFormatPreferences importFormatPreferences | |
| LOGGER | back to summary |
|---|---|
| private static final Logger LOGGER | |
| ArXiv | back to summary |
|---|---|
| public ArXiv(ImportFormatPreferences importFormatPreferences) | |
| asyncPerformSearchById | back to summary |
|---|---|
| protected CompletableFuture | |
| callApi | back to summary |
|---|---|
| private Document callApi(String searchQuery, List<ArXivIdentifier> ids, int start, int maxResults) throws FetcherException Queries the API.
If only
| |
| filterYears | back to summary |
|---|---|
| private List | |
| findFullText | back to summary |
|---|---|
| public Optional Implements org. Doc from org. Tries to find a fulltext URL for a given BibTex entry.
| |
| findIdentifier | back to summary |
|---|---|
| public Optional Implements org. Doc from org. Looks for an identifier based on the information stored in the given | |
| getException | back to summary |
|---|---|
| private FetcherException getException(Document error) | |
| getHelpPage | back to summary |
|---|---|
| public Optional Overrides default org. Doc from org. Returns the help page for this fetcher. | |
| getIdentifierName | back to summary |
|---|---|
| public String getIdentifierName() Implements org. Doc from org. Returns the name of the identifier that is returned by this fetcher.
| |
| getName | back to summary |
|---|---|
| public String getName() Implements org. Doc from org. Returns the localized name of this fetcher. The title can be used to display the fetcher in the menu and in the side pane. | |
| getTrustLevel | back to summary |
|---|---|
| public TrustLevel getTrustLevel() Overrides default org. Doc from org. Returns the level of trust for this fetcher. We distinguish between publishers and meta search engines for example.
| |
| performSearchById | back to summary |
|---|---|
| public Optional Implements org. Doc from org. Looks for bibliographic information associated to the given identifier. | |
| performSearchPaged | back to summary |
|---|---|
| public Page Implements org. Constructs a complex query string using the field prefixes specified at https://arxiv.org/help/api/user-manual
| |
| queryApi | back to summary |
|---|---|
| private List | |
| searchForEntries | back to summary |
|---|---|
| private List | |
| searchForEntries | back to summary |
|---|---|
| private List | |
| searchForEntry | back to summary |
|---|---|
| private Optional | |
| searchForEntryById | back to summary |
|---|---|
| private Optional | |
| Modifier and Type | Field and Description |
|---|---|
| private final Optional | |
| private final List | |
| private final List | |
| private final Optional | |
| private final Optional | |
| private final Optional | |
| private final Optional | |
| private final Optional | |
| private final Optional | |
| private final Optional |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public static String | |
| public Optional | |
| public Optional | |
| public Optional | |
| public Optional | |
| public BibEntry |
| abstractText | back to summary |
|---|---|
| private final Optional<String> abstractText | |
| authorNames | back to summary |
|---|---|
| private final List<String> authorNames | |
| categories | back to summary |
|---|---|
| private final List<String> categories | |
| doi | back to summary |
|---|---|
| private final Optional<String> doi | |
| journalReferenceText | back to summary |
|---|---|
| private final Optional<String> journalReferenceText | |
| pdfUrl | back to summary |
|---|---|
| private final Optional<URL> pdfUrl | |
| primaryCategory | back to summary |
|---|---|
| private final Optional<String> primaryCategory | |
| publishedDate | back to summary |
|---|---|
| private final Optional<String> publishedDate | |
| title | back to summary |
|---|---|
| private final Optional<String> title | |
| urlAbstractPage | back to summary |
|---|---|
| private final Optional<String> urlAbstractPage | |
| ArXivEntry | back to summary |
|---|---|
| public ArXivEntry(Node item) | |
| correctLineBreaks | back to summary |
|---|---|
| public static String correctLineBreaks(String s) | |
| getDate | back to summary |
|---|---|
| public Optional Returns the date when the first version was put on the arXiv | |
| getId | back to summary |
|---|---|
| public Optional | |
| getIdString | back to summary |
|---|---|
| public Optional Returns the arXiv identifier | |
| getPdfUrl | back to summary |
|---|---|
| public Optional Returns the url of the linked pdf | |
| toBibEntry | back to summary |
|---|---|
| public BibEntry toBibEntry(Character keywordDelimiter) | |