[][src]Crate vk_token_manager

Crate for managing tokens for VK bots! It provides a few abstractions for doing it.

Example

use token_manager::{TokenManager, ManageTokens};
use token_manager::{GroupId, SimpleToken, Token};
let mut manager = TokenManager::new(); // create token manager
// put (boxed) token into.
manager.add_token(GroupId::new(123), Box::new(SimpleToken::new(Token::new("my-token".into()))));
let result = async {
    // get token by id
    let tok = manager.get_by_id(GroupId::new(123)).await;
    assert_eq!(tok, Some(&Token::new("my-token".into())));
};

Re-exports

pub use manager::GroupId;
pub use manager::ManageTokens;
pub use manager::TokenManager;
pub use token::GetToken;
pub use token::Token;

Modules

manager

This crate implements ManageTokens trait and default implementation for it: TokenManager. Also it provides GroupId new type.

token

This crate introduces 2 things: The trait for tokens. (GetToken) and Newtype over String for tokens. (Token)

Structs

SimpleToken

Default implementor of GetToken trait. Usually you would use it.

Attribute Macros

async_trait