Struct pace_core::ActivityStore
source · pub struct ActivityStore { /* private fields */ }
Expand description
The activity store entity
Implementations§
source§impl ActivityStore
impl ActivityStore
source§impl ActivityStore
impl ActivityStore
source§impl ActivityStore
impl ActivityStore
sourcepub fn set_cache(&mut self, val: ActivityStoreCache) -> &mut Self
pub fn set_cache(&mut self, val: ActivityStoreCache) -> &mut Self
In-memory cache for activities
sourcepub fn set_storage(&mut self, val: Arc<StorageKind>) -> &mut Self
pub fn set_storage(&mut self, val: Arc<StorageKind>) -> &mut Self
The storage backend
source§impl ActivityStore
impl ActivityStore
sourcepub fn storage_mut(&mut self) -> &mut Arc<StorageKind>
pub fn storage_mut(&mut self) -> &mut Arc<StorageKind>
The storage backend
source§impl ActivityStore
impl ActivityStore
sourcepub fn with_storage(storage: Arc<StorageKind>) -> PaceResult<Self>
pub fn with_storage(storage: Arc<StorageKind>) -> PaceResult<Self>
Create a new ActivityStore
with a given storage backend
§Arguments
storage
- The storage backend to use for the activity store
§Errors
This method will return an error if the storage backend cannot be used
§Returns
This method returns a new ActivityStore
if the storage backend
was successfully created
pub fn summary_groups_by_category_for_time_range( &self, filter_opts: FilterOptions, time_range_opts: TimeRangeOptions ) -> PaceOptResult<SummaryGroupByCategory>
Trait Implementations§
source§impl ActivityQuerying for ActivityStore
impl ActivityQuerying for ActivityStore
source§fn list_activities_by_id(
&self
) -> PaceOptResult<BTreeMap<ActivityGuid, Activity>>
fn list_activities_by_id( &self ) -> PaceOptResult<BTreeMap<ActivityGuid, Activity>>
Get all activities by their ID. Read more
source§fn group_activities_by_duration_range(
&self
) -> PaceOptResult<BTreeMap<PaceDurationRange, Vec<ActivityItem>>>
fn group_activities_by_duration_range( &self ) -> PaceOptResult<BTreeMap<PaceDurationRange, Vec<ActivityItem>>>
Group activities by predefined duration ranges (e.g., short, medium, long). Read more
source§fn group_activities_by_start_date(
&self
) -> PaceOptResult<BTreeMap<PaceDate, Vec<ActivityItem>>>
fn group_activities_by_start_date( &self ) -> PaceOptResult<BTreeMap<PaceDate, Vec<ActivityItem>>>
Group activities by their start date. This can help in analyzing how
activities are distributed over time. Read more
source§fn list_activities_with_intermissions(
&self
) -> PaceOptResult<BTreeMap<ActivityGuid, Vec<ActivityItem>>>
fn list_activities_with_intermissions( &self ) -> PaceOptResult<BTreeMap<ActivityGuid, Vec<ActivityItem>>>
Retrieve activities that have one or more intermissions, useful for identifying
potential inefficiencies or breaks. Read more
source§fn group_activities_by_keywords(
&self,
keyword_opts: KeywordOptions
) -> PaceOptResult<BTreeMap<String, Vec<ActivityItem>>>
fn group_activities_by_keywords( &self, keyword_opts: KeywordOptions ) -> PaceOptResult<BTreeMap<String, Vec<ActivityItem>>>
Group activities based on keywords, e.g., category, tags, etc. Read more
source§fn group_activities_by_kind(
&self
) -> PaceOptResult<BTreeMap<ActivityKind, Vec<ActivityItem>>>
fn group_activities_by_kind( &self ) -> PaceOptResult<BTreeMap<ActivityKind, Vec<ActivityItem>>>
Group activities based on their kind (e.g., Task, Intermission). Read more
source§fn list_activities_by_time_range(
&self,
time_range_opts: TimeRangeOptions
) -> PaceOptResult<Vec<ActivityGuid>>
fn list_activities_by_time_range( &self, time_range_opts: TimeRangeOptions ) -> PaceOptResult<Vec<ActivityGuid>>
List activities by time range from the storage backend. Read more
source§fn group_activities_by_status(
&self
) -> PaceOptResult<BTreeMap<ActivityStatus, Vec<ActivityItem>>>
fn group_activities_by_status( &self ) -> PaceOptResult<BTreeMap<ActivityStatus, Vec<ActivityItem>>>
Group activities by their status from the storage backend. Read more
source§fn list_current_activities(
&self,
filter: ActivityFilterKind
) -> PaceOptResult<Vec<ActivityGuid>>
fn list_current_activities( &self, filter: ActivityFilterKind ) -> PaceOptResult<Vec<ActivityGuid>>
List all current activities from the storage backend matching an
ActivityFilter
. Read moresource§fn list_active_intermissions(&self) -> PaceOptResult<Vec<ActivityGuid>>
fn list_active_intermissions(&self) -> PaceOptResult<Vec<ActivityGuid>>
List all active intermissions from the storage backend. Read more
source§fn list_most_recent_activities(
&self,
count: usize
) -> PaceOptResult<Vec<ActivityGuid>>
fn list_most_recent_activities( &self, count: usize ) -> PaceOptResult<Vec<ActivityGuid>>
List the most recent activities from the storage backend. Read more
source§fn is_activity_active(&self, activity_id: ActivityGuid) -> PaceResult<bool>
fn is_activity_active(&self, activity_id: ActivityGuid) -> PaceResult<bool>
Check if an activity is currently active. Read more
source§fn list_intermissions_for_activity_id(
&self,
activity_id: ActivityGuid
) -> PaceOptResult<Vec<ActivityItem>>
fn list_intermissions_for_activity_id( &self, activity_id: ActivityGuid ) -> PaceOptResult<Vec<ActivityItem>>
List all intermissions for an activity id from the storage backend. Read more
source§fn list_active_intermissions_for_activity_id(
&self,
activity_id: ActivityGuid
) -> PaceOptResult<Vec<ActivityGuid>>
fn list_active_intermissions_for_activity_id( &self, activity_id: ActivityGuid ) -> PaceOptResult<Vec<ActivityGuid>>
Check if an activity currently has one or more active intermissions. Read more
source§fn most_recent_active_activity(&self) -> PaceOptResult<ActivityItem>
fn most_recent_active_activity(&self) -> PaceOptResult<ActivityItem>
Get the latest active activity. Read more
source§fn most_recent_held_activity(&self) -> PaceOptResult<ActivityItem>
fn most_recent_held_activity(&self) -> PaceOptResult<ActivityItem>
Get the latest held activity. Read more
source§impl ActivityReadOps for ActivityStore
impl ActivityReadOps for ActivityStore
source§fn read_activity(&self, activity_id: ActivityGuid) -> PaceResult<ActivityItem>
fn read_activity(&self, activity_id: ActivityGuid) -> PaceResult<ActivityItem>
Read an activity from the storage backend. Read more
source§fn list_activities(
&self,
filter: ActivityFilterKind
) -> PaceOptResult<FilteredActivities>
fn list_activities( &self, filter: ActivityFilterKind ) -> PaceOptResult<FilteredActivities>
List activities from the storage backend. Read more
source§impl ActivityStateManagement for ActivityStore
impl ActivityStateManagement for ActivityStore
source§fn begin_activity(&self, activity: Activity) -> PaceResult<ActivityItem>
fn begin_activity(&self, activity: Activity) -> PaceResult<ActivityItem>
Begin an activity in the storage backend. This makes the activity active. Read more
source§fn end_activity(
&self,
activity_id: ActivityGuid,
end_opts: EndOptions
) -> PaceResult<ActivityItem>
fn end_activity( &self, activity_id: ActivityGuid, end_opts: EndOptions ) -> PaceResult<ActivityItem>
End an activity in the storage backend. Read more
source§fn end_all_activities(
&self,
end_opts: EndOptions
) -> PaceOptResult<Vec<ActivityItem>>
fn end_all_activities( &self, end_opts: EndOptions ) -> PaceOptResult<Vec<ActivityItem>>
End all activities in the storage backend. Read more
source§fn end_last_unfinished_activity(
&self,
end_opts: EndOptions
) -> PaceOptResult<ActivityItem>
fn end_last_unfinished_activity( &self, end_opts: EndOptions ) -> PaceOptResult<ActivityItem>
End the last unfinished activity in the storage backend. Read more
source§fn hold_most_recent_active_activity(
&self,
hold_opts: HoldOptions
) -> PaceOptResult<ActivityItem>
fn hold_most_recent_active_activity( &self, hold_opts: HoldOptions ) -> PaceOptResult<ActivityItem>
Hold the most recent activity that is active in the storage backend. Read more
source§fn end_all_active_intermissions(
&self,
end_opts: EndOptions
) -> PaceOptResult<Vec<ActivityGuid>>
fn end_all_active_intermissions( &self, end_opts: EndOptions ) -> PaceOptResult<Vec<ActivityGuid>>
End all active intermissions in the storage backend. Read more
source§fn resume_activity(
&self,
activity_id: ActivityGuid,
resume_opts: ResumeOptions
) -> PaceResult<ActivityItem>
fn resume_activity( &self, activity_id: ActivityGuid, resume_opts: ResumeOptions ) -> PaceResult<ActivityItem>
Resume an activity in the storage backend. Read more
source§fn hold_activity(
&self,
activity_id: ActivityGuid,
hold_opts: HoldOptions
) -> PaceResult<ActivityItem>
fn hold_activity( &self, activity_id: ActivityGuid, hold_opts: HoldOptions ) -> PaceResult<ActivityItem>
Hold an activity in the storage backend. Read more
source§fn resume_most_recent_activity(
&self,
resume_opts: ResumeOptions
) -> PaceOptResult<ActivityItem>
fn resume_most_recent_activity( &self, resume_opts: ResumeOptions ) -> PaceOptResult<ActivityItem>
Resume the most recent activity in the storage backend. Read more
source§impl ActivityStorage for ActivityStore
impl ActivityStorage for ActivityStore
source§fn setup_storage(&self) -> PaceResult<()>
fn setup_storage(&self) -> PaceResult<()>
Setup the storage backend. This is called once when the application starts. Read more
source§impl ActivityWriteOps for ActivityStore
impl ActivityWriteOps for ActivityStore
source§fn create_activity(&self, activity: Activity) -> PaceResult<ActivityItem>
fn create_activity(&self, activity: Activity) -> PaceResult<ActivityItem>
Create an activity in the storage backend. Read more
source§fn update_activity(
&self,
activity_id: ActivityGuid,
updated_activity: Activity,
update_opts: UpdateOptions
) -> PaceResult<ActivityItem>
fn update_activity( &self, activity_id: ActivityGuid, updated_activity: Activity, update_opts: UpdateOptions ) -> PaceResult<ActivityItem>
Update an existing activity in the storage backend. Read more
source§fn delete_activity(
&self,
activity_id: ActivityGuid,
delete_opts: DeleteOptions
) -> PaceResult<ActivityItem>
fn delete_activity( &self, activity_id: ActivityGuid, delete_opts: DeleteOptions ) -> PaceResult<ActivityItem>
Delete an activity from the storage backend. Read more
source§impl From<ActivityStore> for StorageKind
impl From<ActivityStore> for StorageKind
source§fn from(v: ActivityStore) -> StorageKind
fn from(v: ActivityStore) -> StorageKind
Converts to this type from the input type.
source§impl SyncStorage for ActivityStore
impl SyncStorage for ActivityStore
source§impl TryInto<ActivityStore> for StorageKind
impl TryInto<ActivityStore> for StorageKind
Auto Trait Implementations§
impl !RefUnwindSafe for ActivityStore
impl Send for ActivityStore
impl Sync for ActivityStore
impl Unpin for ActivityStore
impl !UnwindSafe for ActivityStore
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
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<D> OwoColorize for D
impl<D> OwoColorize for D
source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Set the foreground color generically Read more
source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Set the background color generically. Read more
source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Change the foreground color to black
source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Change the background color to black
source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Change the foreground color to red
source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Change the background color to red
source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Change the foreground color to green
source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Change the background color to green
source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Change the foreground color to yellow
source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Change the background color to yellow
source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Change the foreground color to blue
source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Change the background color to blue
source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Change the foreground color to magenta
source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Change the background color to magenta
source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Change the foreground color to purple
source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Change the background color to purple
source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Change the foreground color to cyan
source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Change the background color to cyan
source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Change the foreground color to white
source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Change the background color to white
source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Change the foreground color to the terminal default
source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Change the background color to the terminal default
source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Change the foreground color to bright black
source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Change the background color to bright black
source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Change the foreground color to bright red
source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Change the background color to bright red
source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Change the foreground color to bright green
source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Change the background color to bright green
source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Change the foreground color to bright yellow
source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Change the background color to bright yellow
source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Change the foreground color to bright blue
source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Change the background color to bright blue
source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Change the foreground color to bright magenta
source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Change the background color to bright magenta
source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Change the foreground color to bright purple
source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Change the background color to bright purple
source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Change the foreground color to bright cyan
source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Change the background color to bright cyan
source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Change the foreground color to bright white
source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Change the background color to bright white
source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Make the text bold
source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Make the text dim
source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Make the text italicized
source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Make the text italicized
source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Make the text blink
source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Make the text blink (but fast!)
source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Swap the foreground and background colors
Hide the text
source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Cross out the text
source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
Set the foreground color at runtime. Only use if you do not know which color will be used at
compile-time. If the color is constant, use either
OwoColorize::fg
or
a color-specific method, such as OwoColorize::green
, Read moresource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
Set the background color at runtime. Only use if you do not know what color to use at
compile-time. If the color is constant, use either
OwoColorize::bg
or
a color-specific method, such as OwoColorize::on_yellow
, Read moresource§fn fg_rgb<const R: u8, const G: u8, const B: u8>(
&self
) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>
fn fg_rgb<const R: u8, const G: u8, const B: u8>( &self ) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>
Set the foreground color to a specific RGB value.
source§fn bg_rgb<const R: u8, const G: u8, const B: u8>(
&self
) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>
fn bg_rgb<const R: u8, const G: u8, const B: u8>( &self ) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>
Set the background color to a specific RGB value.
source§fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
Sets the foreground color to an RGB value.
source§fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>
fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>
Sets the background color to an RGB value.