request_database submodule¶
This module is used to keep incomming and outgoing structures and also for serialization/deserialization to/from XML.
-
class
aleph_link_export.request_database.RequestDatabase(log_fn='/home/aleph_export/link_export.log', db_fn='/home/aleph_export/request_datase.shelve', db_key='request_database', logging=True, req_fn='/home/aleph_export/edep2aleph/requests.xml', resp_fn='/home/aleph_export/aleph2edep/responses.xml', xsd_url='http://edeposit-aplikace.nkp.cz/link_export_notification.xsd')¶ Bases:
aleph_link_export.shelvedb.ShelveDatabaseKeep the track of requests and resposes and their serialization and deserialization from/to XMl.
-
req_fn= None¶ Path to the request XML.
-
resp_fn= None¶ Path to the response XML
-
add_request(request)¶ Add new request object to database.
Parameters: request (obj) – Object with defined session_idproperty andto_dict_xml()method.
-
get_responses()¶ Process response queue, remove finished requests from request queue, return list of response objects.
Returns: List of LinkUpdateResponseobjects.Return type: list
-
save()¶ Read the response XML, process it, save the database and request XML.
-
static
load(fn='/home/aleph_export/request_datase.shelve', db_key='request_database', creator=<function <lambda>>)¶ Load the database from the shelve fn.
Parameters: - fn (str) – Path to the database file. Default
DATABASE_FN. - db_key (str) – What database key to use. Default
DATABASE_KEY. - creator (fn reference) – Reference to the function, which will
create new
RequestDatabaseif the old is not found. Default lambda, which expects fn parameterlambda fn: ...
Returns: RequestDatabaseinstance from the fn or newlycreated.
Return type: obj
- fn (str) – Path to the database file. Default
-