Raxol.Terminal.SessionManager.Helpers (Raxol v2.0.1)
View SourceHelper functions for SessionManager operations.
Provides utilities for session cleanup, timing, and other session management tasks.
Summary
Functions
Cancels a cleanup timer.
Formats session info for display.
Generates a unique session ID.
Merges session options with defaults.
Checks if a session has expired based on last activity.
Starts a cleanup timer for periodic session maintenance.
Validates session configuration.
Functions
@spec cancel_cleanup_timer(reference() | nil) :: :ok | {:error, :not_found}
Cancels a cleanup timer.
Parameters
- timer_ref: Timer reference to cancel
Returns
:okif timer was canceled{:error, :not_found}if timer doesn't exist
Formats session info for display.
Parameters
- session: Session data map
Returns
Formatted string
@spec generate_session_id() :: String.t()
Generates a unique session ID.
Returns
String session ID
Merges session options with defaults.
Parameters
- opts: User-provided options
- defaults: Default options
Returns
Merged options map
@spec session_expired?(integer(), non_neg_integer()) :: boolean()
Checks if a session has expired based on last activity.
Parameters
- last_activity: Timestamp of last activity
- timeout: Timeout duration in milliseconds
Returns
Boolean indicating if session is expired
@spec start_cleanup_timer(non_neg_integer()) :: reference()
Starts a cleanup timer for periodic session maintenance.
Parameters
- interval: Time interval in milliseconds for cleanup
Returns
Timer reference
Validates session configuration.
Parameters
- config: Session configuration map
Returns
{:ok, config}if valid{:error, reason}if invalid