RPKI Engine
1.0
|
Public Member Functions | |
def | sql_decode |
def | sql_delete |
def | sql_delete_hook |
def | sql_encode |
def | sql_fetch |
def | sql_fetch_all |
def | sql_fetch_hook |
def | sql_fetch_where |
def | sql_fetch_where1 |
def | sql_init |
def | sql_insert_hook |
def | sql_is_dirty |
def | sql_mark_clean |
def | sql_mark_deleted |
def | sql_mark_dirty |
def | sql_store |
def | sql_update_hook |
Public Attributes | |
gctx | |
Static Public Attributes | |
sql_debug = False | |
Enable logging of SQL actions. | |
sql_deleted = False | |
Whether our cached copy of this object has been deleted. | |
sql_in_db = False | |
Whether this object is already in SQL or not. |
def rpki::sql::sql_persistent::sql_decode | ( | self, | |
vals | |||
) |
Initialize an object with values returned by self.sql_fetch(). This is a default version that assumes a one-to-one mapping between column names in SQL and attribute names in Python. If you need something fancier, override this.
Reimplemented in rpki::rpkid::ca_detail_obj.
Definition at line 322 of file sql.py.
References rpki::publication::config_elt::sql_template, rpki::publication::client_elt::sql_template, rpki::left_right::self_elt::sql_template, rpki::rpkid::ca_obj::sql_template, rpki::rpkid::ca_detail_obj::sql_template, rpki::left_right::bsc_elt::sql_template, rpki::left_right::repository_elt::sql_template, rpki::left_right::parent_elt::sql_template, rpki::left_right::child_elt::sql_template, rpki::rpkid::child_cert_obj::sql_template, rpki::rpkid::revoked_cert_obj::sql_template, rpki::rpkid::roa_obj::sql_template, and rpki::rpkid::ghostbuster_obj::sql_template.
def rpki::sql::sql_persistent::sql_delete | ( | self | ) |
Delete this object from SQL.
Definition at line 293 of file sql.py.
References gctx, rpki::rpkid::ca_obj::gctx, rpki::rpkid::ca_detail_obj::gctx, rpki::rpkid::child_cert_obj::gctx, rpki::rpkid::revoked_cert_obj::gctx, rpki::rpkid::roa_obj::gctx, rpki::rpkid::ghostbuster_obj::gctx, sql_debug, sql_delete_hook(), rpki::rpkid::roa_obj::sql_delete_hook(), sql_in_db, sql_mark_clean(), rpki::publication::config_elt::sql_template, rpki::publication::client_elt::sql_template, rpki::left_right::self_elt::sql_template, rpki::rpkid::ca_obj::sql_template, rpki::rpkid::ca_detail_obj::sql_template, rpki::left_right::bsc_elt::sql_template, rpki::left_right::repository_elt::sql_template, rpki::left_right::parent_elt::sql_template, rpki::left_right::child_elt::sql_template, rpki::rpkid::child_cert_obj::sql_template, rpki::rpkid::revoked_cert_obj::sql_template, rpki::rpkid::roa_obj::sql_template, and rpki::rpkid::ghostbuster_obj::sql_template.
Referenced by rpki::rpkid::ca_obj::delete(), rpki::rpkid::ca_detail_obj::delete(), and rpki::rpkid::child_cert_obj::revoke().
def rpki::sql::sql_persistent::sql_delete_hook | ( | self | ) |
Customization hook.
Reimplemented in rpki::rpkid::roa_obj.
Definition at line 354 of file sql.py.
Referenced by sql_delete().
def rpki::sql::sql_persistent::sql_encode | ( | self | ) |
Convert object attributes into a dict for use with canned SQL queries. This is a default version that assumes a one-to-one mapping between column names in SQL and attribute names in Python. If you need something fancier, override this.
Definition at line 309 of file sql.py.
References rpki::publication::config_elt::sql_template, rpki::publication::client_elt::sql_template, rpki::left_right::self_elt::sql_template, rpki::rpkid::ca_obj::sql_template, rpki::rpkid::ca_detail_obj::sql_template, rpki::left_right::bsc_elt::sql_template, rpki::left_right::repository_elt::sql_template, rpki::left_right::parent_elt::sql_template, rpki::left_right::child_elt::sql_template, rpki::rpkid::child_cert_obj::sql_template, rpki::rpkid::revoked_cert_obj::sql_template, rpki::rpkid::roa_obj::sql_template, and rpki::rpkid::ghostbuster_obj::sql_template.
Referenced by sql_store().
def rpki::sql::sql_persistent::sql_fetch | ( | cls, | |
gctx, | |||
id | |||
) |
Fetch one object from SQL, based on its primary key. Since in this one case we know that the primary index is also the cache key, we check for a cache hit directly in the hope of bypassing the SQL lookup entirely. This method is usually called via a one-line class-specific wrapper. As a convenience, we also accept an id of None, and just return None in this case.
Definition at line 162 of file sql.py.
Referenced by rpki::publication::config_elt::serve_fetch_one_maybe(), and rpki::publication::config_elt::serve_set().
def rpki::sql::sql_persistent::sql_fetch_all | ( | cls, | |
gctx | |||
) |
Fetch all objects of this type from SQL.
Definition at line 200 of file sql.py.
Referenced by rpki::publication::client_elt::serve_fetch_all(), and rpki::left_right::self_elt::serve_fetch_all().
def rpki::sql::sql_persistent::sql_fetch_hook | ( | self | ) |
def rpki::sql::sql_persistent::sql_fetch_where | ( | cls, | |
gctx, | |||
where, | |||
args = None , |
|||
also_from = None |
|||
) |
Fetch objects of this type matching an arbitrary SQL WHERE expression.
Definition at line 207 of file sql.py.
Referenced by rpki::left_right::data_elt::serve_fetch_all().
def rpki::sql::sql_persistent::sql_fetch_where1 | ( | cls, | |
gctx, | |||
where, | |||
args = None , |
|||
also_from = None |
|||
) |
Fetch one object from SQL, based on an arbitrary SQL WHERE expression.
Definition at line 185 of file sql.py.
Referenced by rpki::left_right::data_elt::serve_fetch_one_maybe(), and rpki::publication::client_elt::serve_fetch_one_maybe().
def rpki::sql::sql_persistent::sql_init | ( | cls, | |
gctx, | |||
row, | |||
key | |||
) |
def rpki::sql::sql_persistent::sql_insert_hook | ( | self | ) |
Customization hook.
Reimplemented in rpki::rpkid::roa_obj.
Definition at line 341 of file sql.py.
Referenced by sql_store().
def rpki::sql::sql_persistent::sql_is_dirty | ( | self | ) |
Query whether this object needs to be written back to SQL.
Definition at line 258 of file sql.py.
References gctx, rpki::rpkid::ca_obj::gctx, rpki::rpkid::ca_detail_obj::gctx, rpki::rpkid::child_cert_obj::gctx, rpki::rpkid::revoked_cert_obj::gctx, rpki::rpkid::roa_obj::gctx, and rpki::rpkid::ghostbuster_obj::gctx.
def rpki::sql::sql_persistent::sql_mark_clean | ( | self | ) |
Mark this object as not needing to be written back to SQL.
Definition at line 252 of file sql.py.
Referenced by sql_delete(), and sql_store().
def rpki::sql::sql_persistent::sql_mark_deleted | ( | self | ) |
Mark this object as needing to be deleted in SQL.
Definition at line 264 of file sql.py.
References sql_deleted, and sql_mark_dirty().
Referenced by rpki::rpkid::roa_obj::revoke(), and rpki::rpkid::ghostbuster_obj::revoke().
def rpki::sql::sql_persistent::sql_mark_dirty | ( | self | ) |
Mark this object as needing to be written back to SQL.
Definition at line 246 of file sql.py.
Referenced by rpki::rpkid::ca_detail_obj::crl_published_callback(), rpki::rpkid::ca_detail_obj::manifest_published_callback(), rpki::rpkid::ca_obj::next_crl_number(), rpki::rpkid::ca_obj::next_manifest_number(), rpki::rpkid::ca_obj::next_serial_number(), rpki::rpkid::child_cert_obj::published_callback(), rpki::rpkid::roa_obj::published_callback(), rpki::rpkid::ghostbuster_obj::published_callback(), and sql_mark_deleted().
def rpki::sql::sql_persistent::sql_store | ( | self | ) |
Store this object to SQL.
Definition at line 271 of file sql.py.
References gctx, rpki::rpkid::ca_obj::gctx, rpki::rpkid::ca_detail_obj::gctx, rpki::rpkid::child_cert_obj::gctx, rpki::rpkid::revoked_cert_obj::gctx, rpki::rpkid::roa_obj::gctx, rpki::rpkid::ghostbuster_obj::gctx, sql_debug, sql_encode(), sql_in_db, sql_insert_hook(), rpki::rpkid::roa_obj::sql_insert_hook(), sql_mark_clean(), rpki::publication::config_elt::sql_template, rpki::publication::client_elt::sql_template, rpki::left_right::self_elt::sql_template, rpki::rpkid::ca_obj::sql_template, rpki::rpkid::ca_detail_obj::sql_template, rpki::left_right::bsc_elt::sql_template, rpki::left_right::repository_elt::sql_template, rpki::left_right::parent_elt::sql_template, rpki::left_right::child_elt::sql_template, rpki::rpkid::child_cert_obj::sql_template, rpki::rpkid::revoked_cert_obj::sql_template, rpki::rpkid::roa_obj::sql_template, rpki::rpkid::ghostbuster_obj::sql_template, and sql_update_hook().
Referenced by rpki::rpkid::roa_obj::generate(), rpki::rpkid::ghostbuster_obj::generate(), and rpki::xml_utils::data_elt::serve_create().
def rpki::sql::sql_persistent::sql_update_hook | ( | self | ) |
Customization hook.
Definition at line 347 of file sql.py.
Referenced by sql_store().
Reimplemented in rpki::rpkid::ghostbuster_obj, rpki::rpkid::roa_obj, rpki::rpkid::revoked_cert_obj, rpki::rpkid::child_cert_obj, rpki::rpkid::ca_detail_obj, and rpki::rpkid::ca_obj.
Definition at line 236 of file sql.py.
Referenced by rpki::left_right::data_elt::bsc(), rpki::left_right::self_elt::bscs(), rpki::left_right::child_elt::ca_from_class_name(), rpki::left_right::repository_elt::call_pubd(), rpki::left_right::parent_elt::cas(), rpki::left_right::self_elt::children(), rpki::left_right::bsc_elt::children(), rpki::left_right::child_elt::fetch_child_certs(), rpki::left_right::self_elt::ghostbusters(), rpki::left_right::data_elt::make_reply_clone_hook(), rpki::left_right::self_elt::parents(), rpki::left_right::bsc_elt::parents(), rpki::left_right::repository_elt::parents(), rpki::left_right::child_elt::parents(), rpki::left_right::parent_elt::query_up_down(), rpki::left_right::self_elt::repositories(), rpki::left_right::bsc_elt::repositories(), rpki::left_right::parent_elt::repository(), rpki::left_right::self_elt::roas(), rpki::left_right::data_elt::self(), rpki::left_right::list_published_objects_elt::serve_dispatch(), rpki::left_right::list_received_resources_elt::serve_dispatch(), rpki::left_right::data_elt::serve_fetch_all(), rpki::publication::client_elt::serve_fetch_all(), rpki::left_right::self_elt::serve_fetch_all(), rpki::left_right::data_elt::serve_fetch_one_maybe(), rpki::publication::config_elt::serve_fetch_one_maybe(), rpki::publication::client_elt::serve_fetch_one_maybe(), rpki::left_right::self_elt::serve_fetch_one_maybe(), rpki::left_right::data_elt::serve_pre_save_hook(), rpki::publication::config_elt::serve_set(), rpki::left_right::child_elt::serve_up_down(), sql_delete(), sql_is_dirty(), sql_store(), rpki::left_right::self_elt::update_ghostbusters(), rpki::left_right::self_elt::update_roas(), and rpki::publication::publication_object_elt::uri_to_filename().
rpki::sql::sql_persistent::sql_debug = False [static] |
Enable logging of SQL actions.
Definition at line 159 of file sql.py.
Referenced by sql_delete(), and sql_store().
rpki::sql::sql_persistent::sql_deleted = False [static] |
Whether our cached copy of this object has been deleted.
Definition at line 154 of file sql.py.
Referenced by sql_mark_deleted().
rpki::sql::sql_persistent::sql_in_db = False [static] |
Whether this object is already in SQL or not.
Definition at line 149 of file sql.py.
Referenced by sql_delete(), and sql_store().