Qdrantex.Repo (Qdrantex v1.8.0)
Default implementation for Qdrantex.Repo
You can use it in your application, simply add it to the supervision tree.
Configuration:
config :qdrantex, Qdrantex.Repo,
api_key: "your_secret_api_key_here"
Summary
Functions
Executes a query. It accepts module, rpc name as atom and struct %...Request{} as data.
Executes a query. It accepts a closure that accepts GRPC.Channel.t() as an argument. This channel will be substituted with the actual channel during the execution, channel will be provided by the Repo itself.
Starts Repo under supervision tree. It accepts options as a keyword list.
Options will be combined with hardcoded options from use statement,
and with the configuration from the application.
Functions
execute(module, rpc, data)
Executes a query. It accepts module, rpc name as atom and struct %...Request{} as data.
Example:
Qdrantex.Repo.execute(Qdrantex.Qdrant.Qdrant.Stub, :health_check, %Qdrantex.Qdrant.HealthCheckRequest{})
run(closure)
@spec run(closure :: (GRPC.Channel.t() -> any())) :: {:ok, map()} | {:error, any()}
Executes a query. It accepts a closure that accepts GRPC.Channel.t() as an argument. This channel will be substituted with the actual channel during the execution, channel will be provided by the Repo itself.
You can generate this closure with simplified syntax from *.Stub gRPC nodules:
Example:
Qdrantex.Repo.run(&Qdrantex.Qdrant.Stub.health_check(&1, %Qdrantex.Qdrant.HealthCheckRequest{}))
start_link(opts)
@spec start_link(Keyword.t()) :: GenServer.on_start()
Starts Repo under supervision tree. It accepts options as a keyword list.
Options will be combined with hardcoded options from use statement,
and with the configuration from the application.
Options:
:hostname- the hostname of the Qdrant service. Default is"localhost".:port- the port of the Qdrant service. Default is6333.:otp_app- the name of the OTP application. Required, but commonly set inusestatement.:api_key- the API key for the Qdrantex service. Can benilif Qdrant service does not require it.:ssl- the SSL options for the connection. Can benilif Qdrant service does not require it.All options from
DBConnection.start_link/2. All these are optional.