pub struct ProductApp {
pub users: UserService<SqliteStore>,
pub link: EdgeLink,
pub events: EventPublisher,
pub admin_token: String,
pub doors: Vec<Arc<dyn LoginDoor>>,
pub anon_read: bool,
pub tokens: LoginTokens,
pub access_ttl_ms: i64,
pub challenges: ChallengeBook,
}Fields§
§users: UserService<SqliteStore>§link: EdgeLink§events: EventPublisher§admin_token: StringBearer for /product/v1/admin/*; empty disables the admin API.
doors: Vec<Arc<dyn LoginDoor>>§anon_read: boolServe unauthenticated reads of public rooms through the marked read-only mode
(M4A_PRODUCT_ANON_READ=on; the core must have M4A_ANON_READ=on too).
tokens: LoginTokensOne-time login tokens for login/get_token.
access_ttl_ms: i64Lifetime of an access token handed out with a refresh token (0 turns refresh tokens off).
challenges: ChallengeBookOpen key-login challenges (replay protection) and this product’s audience name.
Auto Trait Implementations§
impl !Freeze for ProductApp
impl !RefUnwindSafe for ProductApp
impl !UnwindSafe for ProductApp
impl Send for ProductApp
impl Sync for ProductApp
impl Unpin for ProductApp
impl UnsafeUnpin for ProductApp
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