Skip to main content

TicketSource

Trait TicketSource 

Source
pub trait TicketSource: Send + Sync {
    // Required methods
    fn me(&self) -> BoxFuture<'_, Result<(String, String)>>;
    fn containers(&self) -> BoxFuture<'_, Result<Vec<Container>>>;
    fn states<'a>(
        &'a self,
        container: &'a str,
    ) -> BoxFuture<'a, Result<Vec<ExternalState>>>;
    fn issues<'a>(
        &'a self,
        container: &'a str,
        q: &'a Query,
    ) -> BoxFuture<'a, Result<IssuePage>>;
    fn set_state<'a>(
        &'a self,
        r: &'a ExternalRef,
        state: &'a ExternalState,
        mapped: &'a [ExternalState],
    ) -> BoxFuture<'a, Result<()>>;
    fn comment<'a>(
        &'a self,
        r: &'a ExternalRef,
        text: &'a str,
    ) -> BoxFuture<'a, Result<()>>;

    // Provided methods
    fn states_view<'a>(
        &'a self,
        _container: &'a str,
    ) -> BoxFuture<'a, Result<Option<StatesView>>> { ... }
    fn rate_limit(&self) -> Option<RateLimit> { ... }
}
Expand description

A source’s client for one account, the plugin’s side of tickets/*.

Required Methods§

Source

fn me(&self) -> BoxFuture<'_, Result<(String, String)>>

The account as the window shows it (@ada) and its login.

Source

fn containers(&self) -> BoxFuture<'_, Result<Vec<Container>>>

Source

fn states<'a>( &'a self, container: &'a str, ) -> BoxFuture<'a, Result<Vec<ExternalState>>>

Source

fn issues<'a>( &'a self, container: &'a str, q: &'a Query, ) -> BoxFuture<'a, Result<IssuePage>>

Source

fn set_state<'a>( &'a self, r: &'a ExternalRef, state: &'a ExternalState, mapped: &'a [ExternalState], ) -> BoxFuture<'a, Result<()>>

Source

fn comment<'a>( &'a self, r: &'a ExternalRef, text: &'a str, ) -> BoxFuture<'a, Result<()>>

Provided Methods§

Source

fn states_view<'a>( &'a self, _container: &'a str, ) -> BoxFuture<'a, Result<Option<StatesView>>>

The states with the state each column gives by default, for a source that knows better than the names Escouade guesses them by (Azure Boards: by its categories). None: Escouade guesses, and states is what is answered.

Source

fn rate_limit(&self) -> Option<RateLimit>

What its service’s last answer said of the account’s limit, when it says it.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§