| calculate_expiry(std::chrono::seconds timeout) const -> std::optional< std::chrono::system_clock::time_point > | kcenon::pacs::workflow::study_lock_manager | private |
| can_acquire_lock(const std::string &study_uid, lock_type type) const -> bool | kcenon::pacs::workflow::study_lock_manager | private |
| cleanup_expired_locks() -> std::size_t | kcenon::pacs::workflow::study_lock_manager | |
| config_ | kcenon::pacs::workflow::study_lock_manager | private |
| force_unlock(const std::string &study_uid, const std::string &admin_reason="") -> kcenon::common::Result< std::monostate > | kcenon::pacs::workflow::study_lock_manager | |
| generate_token_id() const -> std::string | kcenon::pacs::workflow::study_lock_manager | private |
| get_all_locks() const -> std::vector< lock_info > | kcenon::pacs::workflow::study_lock_manager | |
| get_config() const -> const study_lock_manager_config & | kcenon::pacs::workflow::study_lock_manager | |
| get_expired_locks() const -> std::vector< lock_info > | kcenon::pacs::workflow::study_lock_manager | |
| get_lock_info(const std::string &study_uid) const -> std::optional< lock_info > | kcenon::pacs::workflow::study_lock_manager | |
| get_lock_info_by_token(const std::string &token_id) const -> std::optional< lock_info > | kcenon::pacs::workflow::study_lock_manager | |
| get_locks_by_holder(const std::string &holder) const -> std::vector< lock_info > | kcenon::pacs::workflow::study_lock_manager | |
| get_locks_by_type(lock_type type) const -> std::vector< lock_info > | kcenon::pacs::workflow::study_lock_manager | |
| get_stats() const -> lock_manager_stats | kcenon::pacs::workflow::study_lock_manager | |
| is_locked(const std::string &study_uid) const -> bool | kcenon::pacs::workflow::study_lock_manager | |
| is_locked(const std::string &study_uid, lock_type type) const -> bool | kcenon::pacs::workflow::study_lock_manager | |
| lock(const std::string &study_uid, const std::string &reason, const std::string &holder="", std::chrono::seconds timeout=std::chrono::seconds{0}) -> kcenon::common::Result< lock_token > | kcenon::pacs::workflow::study_lock_manager | |
| lock(const std::string &study_uid, lock_type type, const std::string &reason, const std::string &holder="", std::chrono::seconds timeout=std::chrono::seconds{0}) -> kcenon::common::Result< lock_token > | kcenon::pacs::workflow::study_lock_manager | |
| lock_event_callback typedef | kcenon::pacs::workflow::study_lock_manager | |
| locks_ | kcenon::pacs::workflow::study_lock_manager | private |
| mutex_ | kcenon::pacs::workflow::study_lock_manager | mutableprivate |
| next_token_id_ | kcenon::pacs::workflow::study_lock_manager | mutableprivate |
| on_lock_acquired_ | kcenon::pacs::workflow::study_lock_manager | private |
| on_lock_expired_ | kcenon::pacs::workflow::study_lock_manager | private |
| on_lock_released_ | kcenon::pacs::workflow::study_lock_manager | private |
| operator=(const study_lock_manager &)=delete | kcenon::pacs::workflow::study_lock_manager | |
| operator=(study_lock_manager &&) noexcept | kcenon::pacs::workflow::study_lock_manager | |
| record_acquisition(lock_type type) | kcenon::pacs::workflow::study_lock_manager | private |
| record_release(lock_type type, std::chrono::milliseconds duration) | kcenon::pacs::workflow::study_lock_manager | private |
| refresh_lock(const lock_token &token, std::chrono::seconds extension=std::chrono::seconds{0}) -> kcenon::common::Result< lock_token > | kcenon::pacs::workflow::study_lock_manager | |
| reset_stats() | kcenon::pacs::workflow::study_lock_manager | |
| resolve_holder(const std::string &holder) const -> std::string | kcenon::pacs::workflow::study_lock_manager | private |
| set_config(const study_lock_manager_config &config) | kcenon::pacs::workflow::study_lock_manager | |
| set_on_lock_acquired(lock_event_callback callback) | kcenon::pacs::workflow::study_lock_manager | |
| set_on_lock_expired(lock_event_callback callback) | kcenon::pacs::workflow::study_lock_manager | |
| set_on_lock_released(lock_event_callback callback) | kcenon::pacs::workflow::study_lock_manager | |
| stats_ | kcenon::pacs::workflow::study_lock_manager | mutableprivate |
| stats_mutex_ | kcenon::pacs::workflow::study_lock_manager | mutableprivate |
| study_lock_manager() | kcenon::pacs::workflow::study_lock_manager | |
| study_lock_manager(const study_lock_manager_config &config) | kcenon::pacs::workflow::study_lock_manager | explicit |
| study_lock_manager(const study_lock_manager &)=delete | kcenon::pacs::workflow::study_lock_manager | |
| study_lock_manager(study_lock_manager &&) noexcept | kcenon::pacs::workflow::study_lock_manager | |
| token_to_study_ | kcenon::pacs::workflow::study_lock_manager | private |
| try_lock(const std::string &study_uid, lock_type type, const std::string &reason, const std::string &holder="", std::chrono::seconds timeout=std::chrono::seconds{0}) -> kcenon::common::Result< lock_token > | kcenon::pacs::workflow::study_lock_manager | |
| unlock(const lock_token &token) -> kcenon::common::Result< std::monostate > | kcenon::pacs::workflow::study_lock_manager | |
| unlock(const std::string &study_uid, const std::string &holder) -> kcenon::common::Result< std::monostate > | kcenon::pacs::workflow::study_lock_manager | |
| unlock_all_by_holder(const std::string &holder) -> std::size_t | kcenon::pacs::workflow::study_lock_manager | |
| validate_token(const lock_token &token) const -> bool | kcenon::pacs::workflow::study_lock_manager | |
| ~study_lock_manager() | kcenon::pacs::workflow::study_lock_manager | |