pub struct GitLabSource { /* private fields */ }Expand description
Imports issues from a single GitLab project.
Implementations§
Source§impl GitLabSource
impl GitLabSource
Sourcepub fn new(project: impl Into<String>, token: impl Into<String>) -> Result<Self>
pub fn new(project: impl Into<String>, token: impl Into<String>) -> Result<Self>
Import from project (full path, e.g. group/sub/proj) on gitlab.com.
Sourcepub fn with_base(
base: &str,
project: impl Into<String>,
token: impl Into<String>,
) -> Result<Self>
pub fn with_base( base: &str, project: impl Into<String>, token: impl Into<String>, ) -> Result<Self>
As GitLabSource::new but against a self-managed instance base.
Sourcepub fn with_mapping(self, mapping: StateMapping) -> Self
pub fn with_mapping(self, mapping: StateMapping) -> Self
Apply a per-connection [StateMapping] (e.g. a ScopedLabel policy for
workflow:: labels).
Trait Implementations§
Source§impl TicketSource for GitLabSource
impl TicketSource for GitLabSource
Source§fn capabilities(&self) -> Capabilities
fn capabilities(&self) -> Capabilities
What this source supports. Callers consult this before attempting writes.
Source§fn fetch_changed<'life0, 'life1, 'async_trait>(
&'life0 self,
cursor: &'life1 Cursor,
) -> Pin<Box<dyn Future<Output = Result<Page>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn fetch_changed<'life0, 'life1, 'async_trait>(
&'life0 self,
cursor: &'life1 Cursor,
) -> Pin<Box<dyn Future<Output = Result<Page>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Tickets changed since
cursor (or all tickets, if the cursor is empty),
plus the cursor to resume incremental sync from.Source§fn get<'life0, 'life1, 'async_trait>(
&'life0 self,
uid: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Ticket>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get<'life0, 'life1, 'async_trait>(
&'life0 self,
uid: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Ticket>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Fetch a single ticket by its stable provider
uid.Source§fn set_state<'life0, 'life1, 'async_trait>(
&'life0 self,
uid: &'life1 str,
target: StateCategory,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn set_state<'life0, 'life1, 'async_trait>(
&'life0 self,
uid: &'life1 str,
target: StateCategory,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Move a ticket to a normalized [
StateCategory]. The source resolves this
to its native mechanism (a Jira transition, a GitLab label swap, an Asana
section move). Capability-gated: defaults to Unsupported.Source§fn comment<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
uid: &'life1 str,
body: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn comment<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
uid: &'life1 str,
body: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Append a comment to a ticket. Capability-gated: defaults to
Unsupported.Auto Trait Implementations§
impl Freeze for GitLabSource
impl !RefUnwindSafe for GitLabSource
impl Send for GitLabSource
impl Sync for GitLabSource
impl Unpin for GitLabSource
impl UnsafeUnpin for GitLabSource
impl !UnwindSafe for GitLabSource
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