Modules
PhoenixGenApi is a framework for building distributed API systems with Phoenix.
Validates and converts request arguments according to configured type specifications.
Shared push-handling logic for GenApi WebSocket channels.
A GenServer-based cache for storing FunConfig structs, using an ETS table as the
backing store.
This module is responsible for periodically pulling function configurations (%FunConfig{})
from remote nodes and updating the ConfigDb.
A client-side module used on remote/service nodes to push configurations to the PhoenixGenApi gateway/server node.
A server-side GenServer that receives pushed configs from remote nodes.
Error raised when an argument has an invalid type.
The core execution engine of PhoenixGenApi.
Shared utility functions used across PhoenixGenApi modules.
Provides before/after execution hooks for FunConfig.
Provides node selection strategies for distributed request execution.
Provides permission checking functionality for API requests.
Provides rate limiting functionality for API requests.
A GenServer that manages a streaming function call.
Defines the configuration for a function that can be called through the API.
Represents the data a remote node pushes to the PhoenixGenApi server node.
Request struct for internal using, convert data map from websocket api.
Defines the structure of a response sent back to the client.
Service configuration struct that defines how to connect to a remote service and pull its function configurations.
Support for send data to stream.
Telemetry integration for PhoenixGenApi.
Generic worker pool for executing tasks asynchronously.
Individual worker process for executing tasks.
Supervisor for worker pools.