PID views
Definice views.
Třídy
- class ApiView
Implementuje komponentu
ApiViewv rámci aplikace.Metody:
- __init__()
Inicializuje instanci třídy.
- Parametry:
kwargs – Parametr
kwargsse předává do volání__init__().
- _get_value_from_cache()
Vrací value from cache.
- Parametry:
key – Textový název nebo klíč
keypoužívaný v rámci operace.- Vrací:
Načtená data odpovídající zadaným vstupům.
- _save_value_to_cache()
Uloží value to cache.
- Parametry:
key – Textový název nebo klíč
keypoužívaný v rámci operace.value – Parametr
valuepředává se do voláníset().
- Vrací:
Výstup funkce odpovídající implementované logice.
- api_call()
Zavolá API dotaz pro autocomplete (abstraktní metoda).
- Parametry:
q – Vyhledávací dotaz od uživatele.
use_cache – Zda používat mezipaměť výsledků.
- get()
Vrací JSON odpověď s autocomplete výsledky.
Při dotazu tvořeném jen mezerami vrátí prázdný seznam výsledků.
- Parametry:
request – HTTP požadavek ze strany klienta.
args – Poziční argumenty z URL.
kwargs – Pojmenované argumenty z URL.
- Vrací:
JSON odpověď s výsledky.
- autocomplete_results()
Transformuje výsledky API na formát autocomplete (id, text).
- Parametry:
results – Výsledky vrácené API voláním.
- Vrací:
Seznam tuples (id, text) pro autocomplete.
- get_list()
Vrací list. v aplikaci.
- Vrací:
Vrací výsledek volání
api_call().
- class DoiAutocompleteView
Implementuje komponentu
DoiAutocompleteViewv rámci aplikace.Metody:
- _datacite_token_for_quoted_lucene()
Escapuje znaky v tokenu vkládaném do Lucene fráze v uvozovkách.
- Parametry:
token – Část uživatelského dotazu.
- Vrací:
Řetězec bezpečný pro vložení do
"...*token*...".
- _datacite_record_label()
Vrátí zobrazený název záznamu DataCite nebo ID záznamu.
Ošetřuje záznamy bez
attributes, beztitlesnebo s prázdným seznamem titulků a nekanonické typy polí v odpovědi API.- Parametry:
record – Položka z pole
dataodpovědi API.- Vrací:
Titulek, případně DOI z
id; prázdný řetězec, pokud nelze nic odvodit.
- _crossref_item_display_title()
Vrátí zobrazený název z položky odpovědi CrossRef
/works(objekt vitems).- Parametry:
item – Slovník s poli
titleaDOIdle API (DOI se v odpovědi předpokládá vždy).- Vrací:
První textový titulek, jinak řetězec DOI.
- _api_call_cross_ref_doi()
Vyhledá DOI v CrossRef API pomocí přímého DOI.
U objektu
message(jedna práce i položky ve výsledném seznamu) se předpokládá vždy poleDOI.- Parametry:
q – Vyhledávací dotaz (DOI).
- Vrací:
Seznam [DOI, název] párů.
- _doi_item_exists()
Ověří existenci DOI pomocí HTTP HEAD požadavku.
- Parametry:
doi – Řetězec DOI předaný z
api_callpo shodě vstupu sCROSSREF_DOI_REGEX.- Vrací:
Seznam [DOI, DOI] pokud existuje, jinak prázdný seznam.
- api_call()
Vyhledá DOI v CrossRef a DataCite API.
Dotaz je na začátku ořezán funkcí
str.strip(); prázdný řetězec vrátí prázdný seznam bez volání externích služeb. Ověření existence přesdoi.org(_doi_item_exists) proběhne jen pro vstup odpovídajícíCROSSREF_DOI_REGEX.- Parametry:
q – Vyhledávací dotaz.
use_cache – Parametr se kvůli shodné signatuře s
ApiView.api_callpředává zPidAutocompleteField, ale u této třídy se nepoužívá (mezipaměť Redis se nečte ani neukládá).
- Vrací:
Seznam [DOI, název] párů.
- class OrcidAutocompleteView
Implementuje komponentu
OrcidAutocompleteViewv rámci aplikace.Metody:
- api_call()
Vyhledá výzkumné pracovníky v ORCID API.
- Parametry:
q – Vyhledávací dotaz.
use_cache – Zda používat cache.
- Vrací:
Seznam [ORCID ID, jméno] párů.
- class RorAutocompleteView
Implementuje komponentu
RorAutocompleteViewv rámci aplikace.Metody:
- api_call()
Vyhledá organizace v ROR API.
- Parametry:
q – Vyhledávací dotaz.
use_cache – Zda používat cache.
- Vrací:
Seznam [ROR ID, jméno] párů.
- class WikiDataAutocompleteView
Implementuje komponentu
WikiDataAutocompleteViewv rámci aplikace.Metody:
- api_call()
Vyhledá osoby v WikiData SPARQL API.
- Parametry:
q – Vyhledávací dotaz.
use_cache – Zda používat cache.
- Vrací:
Seznam [WikiData ID, jméno] párů.
- class ContinuePidProcessing
Implementuje komponentu
ContinuePidProcessingv rámci aplikace.Metody:
- _perform_client_action()
Provede akci na záznamu a publikuje do DataCite.
- Parametry:
record – Záznam k publikaci (Lokalita, SamostatnyNalez nebo Dokument).
attribute_name – Atribut záznamu pro uložení DOI.
publish_callable_method – Callable pro publikaci.
set_callable_method – Callable pro nastavení stavu.
- Vrací:
DOI nebo chybová zpráva.
- process_record()
Zpracuje záznam pro publikaci/skrytí/smazání PID.
- Parametry:
record – Záznam k publikaci.
result – Výsledek formuláře.
result – Textový název, klíč nebo zpráva
resultpoužívaná v rámci operace.kwargs – Parametr
kwargspracuje se s atributyget.
- Vrací:
Vrací proměnná
result.