pub struct DataSourceCatalog { /* private fields */ }Expand description
业务作用:作为单个 Application 的冻结 datasource 名称与 driver 权威。
Implementations§
Source§impl DataSourceCatalog
impl DataSourceCatalog
Sourcepub fn try_new(
owner: ManagedRegistryOwner,
entries: impl IntoIterator<Item = (String, DatabaseDriver)>,
) -> Result<Self, CatalogBuildError>
pub fn try_new( owner: ManagedRegistryOwner, entries: impl IntoIterator<Item = (String, DatabaseDriver)>, ) -> Result<Self, CatalogBuildError>
业务作用:构造尚未对 getter 开放的冻结 catalog。
参数说明:
owner:本次 Application 的共同 owner。entries:datasource qualifier 与 driver 的完整集合。
返回:名称合法、不重复、非空且数量有界时返回关闭态 catalog;失败不发布部分表。
Sourcepub fn owner(&self) -> &ManagedRegistryOwner
pub fn owner(&self) -> &ManagedRegistryOwner
业务作用:读取 catalog 绑定的 Application owner。
参数说明: 无。
返回:共同 owner 的只读引用。
Sourcepub fn is_empty(&self) -> bool
pub fn is_empty(&self) -> bool
业务作用:判断 catalog 是否没有 datasource。
参数说明: 无。
返回:构造成功后固定为假;该入口供通用容器检查使用。
Sourcepub fn entries(&self) -> Vec<(DatasourceRef, DatabaseDriver)>
pub fn entries(&self) -> Vec<(DatasourceRef, DatabaseDriver)>
业务作用:复制冻结后的 datasource 与 driver 表,供资源登记和观测快照使用。
参数说明: 无。
返回:按 datasource 名排序的拥有型条目。
Sourcepub fn resolve(
&self,
datasource: &str,
expected: DatabaseDriver,
) -> Result<DatasourceRef, DataSourceLookupError>
pub fn resolve( &self, datasource: &str, expected: DatabaseDriver, ) -> Result<DatasourceRef, DataSourceLookupError>
业务作用:在 catalog 已开放时解析名称并复验调用方期待的 driver。
参数说明:
datasource:待解析名称。expected:typed getter 对应的 driver。
返回:名称和 driver 同时匹配时返回规范引用;关闭、缺失或错配时返回结构化错误。
Auto Trait Implementations§
impl !Freeze for DataSourceCatalog
impl Forget for DataSourceCatalog
impl Move for DataSourceCatalog
impl RefUnwindSafe for DataSourceCatalog
impl Send for DataSourceCatalog
impl Sync for DataSourceCatalog
impl Unpin for DataSourceCatalog
impl UnsafeUnpin for DataSourceCatalog
impl UnwindSafe for DataSourceCatalog
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more