These are the post-processing steps applied to the original fetch from ArXiv's API:
| Modifier and Type | Class and Description |
|---|---|
| protected static 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 Pattern | |
| private static final Logger | |
| private static final Pattern | |
| private static final Pattern | |
| private static final Pattern |
| 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. |
| private Page | enrichPageWithDoi(Page<BibEntry> result)
Enriches each entry in the page with additional metadata from ArXiv-issued and user-issued DOIs using parallel async requests. |
| public Optional | |
| public Optional | findIdentifier(BibEntry entry)
Implements 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()
Implements org. Returns the level of trust for this fetcher. |
| private void | infuseWithInspireCitationKeyIfMissing(BibEntry
The fetched arXiv entry to infuse, modified in place. entry)If the entry has no "real" citation key yet, try to look up the paper on INSPIRE (the standard literature database for high-energy physics) and adopt its curated texkey instead. |
| 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 static boolean | |
| private void | |
| 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) |
| private static String | |
| public Page | performRawSearchQueryPaged(String rawQuery, int pageNumber)
Overrides default org.
|
| public List | performSearch(String searchQuery)
Overrides default org. Looks for hits which are matched by the given free-text query. |
| public Optional | performSearchById(String identifier)
Implements org. Looks for bibliographic information associated to the given identifier. |
| public Page | performSearchPaged(String searchQuery, int pageNumber)
Overrides default org.
|
| public Page | Returns: A list of entries matching the complex querythe first search query node queryNode, int 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. |