90 lines
2.0 KiB
C#
90 lines
2.0 KiB
C#
using System;
|
|
using BosMon.Exceptions;
|
|
using BosMon.Plugins;
|
|
using BosMon.Prefs;
|
|
|
|
namespace BlubbFish.BosmonMqtt {
|
|
public class BosMonPluginClass : IBosMonPlugin {
|
|
private readonly MqttPlugin plugin = new MqttPlugin();
|
|
#region Plugin Eigenschaften
|
|
String IBosMonPlugin.PluginName {
|
|
get {
|
|
return "MQTT-Bridge";
|
|
}
|
|
}
|
|
|
|
String IBosMonPlugin.PluginDescription {
|
|
get {
|
|
return "Sendet Telegramme nach MQTT";
|
|
}
|
|
}
|
|
|
|
Int32 IBosMonPlugin.PluginVersion {
|
|
get {
|
|
return 4;
|
|
}
|
|
}
|
|
|
|
PluginType IBosMonPlugin.PluginType {
|
|
get {
|
|
return PluginType.Client;
|
|
}
|
|
}
|
|
|
|
Int32 IBosMonPlugin.PluginFlags {
|
|
get {
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
String[] IBosMonPlugin.StartPluginAfter {
|
|
get {
|
|
return new String[] { "TelegramsEvents" };
|
|
}
|
|
}
|
|
#endregion
|
|
#region Plugin Connectoren
|
|
public IBosMonHost PluginHost {
|
|
get {
|
|
return this.plugin.PluginHost;
|
|
}
|
|
set {
|
|
this.plugin.PluginHost = value ?? throw new BosMonArgumentNullException();
|
|
}
|
|
}
|
|
|
|
IBosMonConfigurationStorage IBosMonPlugin.ConfigurationStorage {
|
|
get {
|
|
return this.plugin.ConfigurationStorage;
|
|
}
|
|
set {
|
|
if (value == null) {
|
|
throw new BosMonArgumentNullException();
|
|
} else if (this.plugin.ConfigurationStorage != null) {
|
|
throw new BosMonInternalException("ConfigStorage already set");
|
|
}
|
|
this.plugin.ConfigurationStorage = value;
|
|
}
|
|
}
|
|
#endregion
|
|
#region Plugin Einstiegspunkte
|
|
void IDisposable.Dispose() {
|
|
this.plugin.Dispose(true);
|
|
GC.SuppressFinalize(this);
|
|
}
|
|
|
|
void IBosMonPlugin.InitializePlugin() {
|
|
this.plugin.Init();
|
|
}
|
|
|
|
void IBosMonPlugin.StartPlugin() {
|
|
this.plugin.Start();
|
|
}
|
|
|
|
void IBosMonPlugin.StopPlugin() {
|
|
this.plugin.Stop();
|
|
}
|
|
#endregion
|
|
}
|
|
}
|