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§
Sourcefn me(&self) -> BoxFuture<'_, Result<(String, String)>>
fn me(&self) -> BoxFuture<'_, Result<(String, String)>>
The account as the window shows it (@ada) and its login.
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§
Sourcefn states_view<'a>(
&'a self,
_container: &'a str,
) -> BoxFuture<'a, Result<Option<StatesView>>>
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.
Sourcefn rate_limit(&self) -> Option<RateLimit>
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".