From 0a5818132c5831347bd424e1e986fb2a84d05a92 Mon Sep 17 00:00:00 2001 From: Carl Kittelberger Date: Tue, 10 Apr 2018 16:34:41 +0200 Subject: [PATCH] Introduce sample plugin code. --- plugins/descriptor.go | 7 +++++++ plugins/icecast/input/instance.go | 11 +++++++++++ plugins/icecast/input/plugin.go | 14 ++++++++++++++ 3 files changed, 32 insertions(+) create mode 100644 plugins/descriptor.go create mode 100644 plugins/icecast/input/instance.go create mode 100644 plugins/icecast/input/plugin.go diff --git a/plugins/descriptor.go b/plugins/descriptor.go new file mode 100644 index 0000000..81a0074 --- /dev/null +++ b/plugins/descriptor.go @@ -0,0 +1,7 @@ +package plugins + +type PluginDescriptor struct { + Name string + Version string + Description string +} diff --git a/plugins/icecast/input/instance.go b/plugins/icecast/input/instance.go new file mode 100644 index 0000000..0193db1 --- /dev/null +++ b/plugins/icecast/input/instance.go @@ -0,0 +1,11 @@ +package main + +import "git.icedream.tech/icedream/uplink/app" + +type pluginInstance struct { + server *app.Server +} + +func (instance *pluginInstance) SetServer(server *app.Server) { + instance.server = server +} diff --git a/plugins/icecast/input/plugin.go b/plugins/icecast/input/plugin.go new file mode 100644 index 0000000..960dc17 --- /dev/null +++ b/plugins/icecast/input/plugin.go @@ -0,0 +1,14 @@ +package main + +import ( + "git.icedream.tech/icedream/uplink/plugins" +) + +var Descriptor = plugins.PluginDescriptor{ + Name: "Icecast Input", + Description: "Allows for Icecast clients to stream to the server.", +} + +func Run() *pluginInstance { + return &pluginInstance{} +}