GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - roadrunner-server/api-plugins: RoadRunner plugins interfaces

BranchesTags
Open more actions menu

Latest commit

 

History

7 Commits
7 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
jobs
jobs
 
 
kv
kv
 
 
lock
lock
 
 
logger
logger
 
 
priority_queue
priority_queue
 
 
status
status
 
 
.gitignore
.gitignore
 
 
.release-please-manifest.json
.release-please-manifest.json
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
go.mod
go.mod
 
 
go.sum
go.sum
 
 
release-please-config.json
release-please-config.json
 
 

Repository files navigation

API Plugins

GoDoc Go Report Card License: MIT Discord

This repository defines Go interface contracts for RoadRunner server plugins. Plugins implement these interfaces so that the Endure dependency injection framework can automatically discover and wire dependencies via its plugin graph. Endure inspects each plugin's Init() method parameters, matches them to registered plugins that implement the required interfaces, and topologically sorts the resulting DAG to determine initialization order.

Packages

Package Description
jobs Job queue interfaces — Driver, Constructor, Pipeline, Message, Job, Queue, and State for async job processing
kv Key-value storage — Storage, Item, and Constructor interfaces with TTL support
lock Lock queue — Item and Queue interfaces for priority-based lock management
logger Logging — Log and Named interfaces wrapping go.uber.org/zap
priority_queue Base priority queue — Item interface with ID, GroupID, Priority
status Status reporting — Status struct with Code field

Usage

A plugin declares its dependencies by accepting interfaces in its Init() method. Endure auto-resolves them from the plugin graph:

type Plugin struct{}

func (p *Plugin) Init(log logger.Log, kv kv.Storage) error {
    log.Info("plugin initialized")
    return nil
}

License

This project is licensed under the MIT License — see the LICENSE file for details.

About

RoadRunner plugins interfaces

Resources

Readme
MIT license
Activity
Custom properties

Stars

0 stars

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.