PID client

Modul client.

Přehled modulu

Klient pro komunikaci s DataCite API při správě DOI/IGSN identifikátorů.

Třídy

class DigitalObjectIdentifierClient

Zapouzdřuje CRUD operace nad DOI/IGSN záznamy v DataCite.

Metody:

__init__()

Inicializuje klienta podle typu předaného doménového záznamu.

Parametry:

record – Parametr record předává se do volání type().

Vyvolá:

ValueError – Vyvolá se při splnění podmínky record_type in self.record_serializer_map.

_check_response_status()

Ověří response status.

Parametry:

response – Textový nebo strukturální vstup response používaný při sestavení nebo zpracování obsahu.

Vrací:

Vrací výsledek ověření nebo validačního pravidla.

Vyvolá:

DoiWriteError – Vyvolá se při splnění podmínky not str(response.status_code).startswith('2').

get_record_url()

Vrátí URL detailu záznamu v DataCite.

Vrací:

Vrací hodnotu podle větve zpracování.

check_record_exists()

Zjistí, zda záznam v DataCite existuje.

Parametry:

check_status – Parametr check_status ovlivňuje větvení podmínek.

Vrací:

Vrací výsledek volání startswith().

Vyvolá:

DoiConnectionError – Vyvolá se při splnění podmínky str(response.status_code).startswith('5') and check_status.

delete_record()

Skryje/smaže záznam v DataCite podle serializovaného payloadu.

Parametry:

check_status – Parametr check_status předává se do volání check_record_exists(), ovlivňuje větvení podmínek.

Vrací:

Vrací výsledek volání json().

Vyvolá:

DoiNoTransactionError – Vyvolá se při splnění podmínky not isinstance(self.record, Lokalita) and (not hasattr(self.record, 'active_transaction')).

hide_record()

Skryje existující záznam v DataCite pomocí serializovaného payloadu pro skrytí.

Parametry:

check_status – Příznak, zda má být ověřena existence záznamu a zkontrolován stavový kód odpovědi.

Vrací:

Vrací výsledek volání json().

Vyvolá:

DoiNoTransactionError – Vyvolá se při splnění podmínky not isinstance(self.record, Lokalita) and (not hasattr(self.record, 'active_transaction')).

publish_record()

Publikuje záznam v DataCite, případně jej nejdříve vytvoří.

Parametry:

check_status – Parametr check_status předává se do volání check_record_exists(), ovlivňuje větvení podmínek.

Vrací:

Vrací výsledek volání json().

Vyvolá:

DoiNoTransactionError – Vyvolá se při splnění podmínky not isinstance(self.record, Lokalita) and (not hasattr(self.record, 'active_transaction')).

update_record()

Aktualizuje record. v aplikaci.

Parametry:
  • check_status – Parametr check_status předává se do volání check_record_exists(), ovlivňuje větvení podmínek.

  • reload_record – Parametr reload_record ovlivňuje větvení podmínek.

Vrací:

Vrací výsledek volání json().