Documentation
¶
Overview ¶
Package factory provides factory functions for creating TeamVault connectors and HTTP clients.
This package simplifies the creation of TeamVault connectors by providing high-level factory functions that handle configuration parsing and proper initialization of connector chains including caching and disk fallback capabilities.
Index ¶
- func CreateConnector(httpClient *http.Client, apiURL teamvault.Url, apiUser teamvault.User, ...) teamvault.Connector
- func CreateConnectorWithConfig(ctx context.Context, httpClient *http.Client, ...) (teamvault.Connector, error)
- func CreateHttpClient(ctx context.Context) (*http.Client, error)
- func CreateRemoteConnector(httpClient *http.Client, apiURL teamvault.Url, apiUser teamvault.User, ...) teamvault.Connector
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreateConnector ¶
func CreateConnector( httpClient *http.Client, apiURL teamvault.Url, apiUser teamvault.User, apiPassword teamvault.Password, staging teamvault.Staging, cacheEnabled bool, currentDateTime libtime.CurrentDateTime, ) teamvault.Connector
CreateConnector creates a new TeamVault Connector based on staging and cache settings. Returns a dummy connector for staging environments, or a disk fallback connector when cache is enabled.
func CreateConnectorWithConfig ¶
func CreateConnectorWithConfig( ctx context.Context, httpClient *http.Client, configPath teamvault.TeamvaultConfigPath, apiURL teamvault.Url, apiUser teamvault.User, apiPassword teamvault.Password, staging teamvault.Staging, cacheEnabled bool, currentDateTime libtime.CurrentDateTime, ) (teamvault.Connector, error)
CreateConnectorWithConfig creates a new TeamVault Connector using configuration from a file or parameters. If the config file exists, it takes precedence over the individual parameters.
func CreateHttpClient ¶
CreateHttpClient creates a new HTTP client configured for TeamVault API communication. The client has a default timeout of 5 seconds.
func CreateRemoteConnector ¶
func CreateRemoteConnector( httpClient *http.Client, apiURL teamvault.Url, apiUser teamvault.User, apiPassword teamvault.Password, currentDateTime libtime.CurrentDateTime, ) teamvault.Connector
CreateRemoteConnector creates a new Connector that communicates directly with a remote TeamVault API.
Types ¶
This section is empty.