View Source Ravix.Connection.State (ravix v0.1.0)

Represents the state of a RavenDB connection

  • store: Store atom for this state. E.g: Ravix.Test.Store
  • database: Name of the database.
  • certificate: RavenDB emmited SSL certificate for the database user in base64
  • certificate_file: Same as above, but a path to the file in the disk
  • conventions: Document Configuration conventions
  • retry_on_failure: Automatic retry in retryable errors
  • retry_on_stale: Automatic retry when the query is stale
  • retry_backoff: Amount of time between retries (in ms)
  • retry_count: Amount of retries
  • node_selector: Module that selects the nodes based on different strategies. E.g: Ravix.Connection.NodeSelector
  • urls: List of the urls of RavenDB servers
  • topology_etag: ETAG of the RavenDB cluster topology
  • disable_topology_updates: If true, the topology will not be updated automatically when requested by the ravendb server
  • force_create_database: If true, when the database does not exist, it will be created
  • last_topology_update: DateTime when the topology was last updated
  • cluster_token: Security Token for the members of the cluster

Link to this section Summary

Link to this section Types

@type t() :: %Ravix.Connection.State{
  certificate: String.t() | nil,
  certificate_file: String.t() | nil,
  cluster_token: String.t() | nil,
  conventions: Ravix.Documents.Conventions.t(),
  database: String.t(),
  disable_topology_updates: boolean(),
  force_create_database: boolean(),
  last_topology_update: DateTime.t() | nil,
  node_selector: Ravix.Connection.NodeSelector.t(),
  retry_backoff: non_neg_integer(),
  retry_count: non_neg_integer(),
  retry_on_failure: boolean(),
  retry_on_stale: boolean(),
  store: any(),
  topology_etag: String.t() | nil,
  urls: [String.t()]
}

Link to this section Functions

Link to this function

validate_configs(configs)

View Source
@spec validate_configs(t()) :: {:error, list()} | {:ok, t()}