public WebThingPlugin() {
string classname = this.GetType().FullName;
- if (Config.PluginOptions.ContainsKey(classname))
+ if (Config.PluginOptions.ContainsKey(classname)) {
Options = Config.PluginOptions[classname];
- else
+ } else {
Options = new Dictionary<string,string>();
+ Config.PluginOptions[classname] = Options;
+ }
}
+ // Convenience function to easily save plugin configuration
+ protected void SaveConfig() {
+ if (Config.ConfigPathOut == null) return;
+
+ string plugin_name = this.GetType().FullName;
+ Config.SaveFile(plugin_name, String.Format("{0}/{1}.conf", Config.ConfigPathOut, plugin_name));
+ }
+
+ // Plugin life cycle
public virtual void Init(WebThing wt) {}
+ public virtual void Deinit(WebThing wt) {}
+
+ // WebView life cycle
public virtual void InitWebView(WebView wv) {}
+ public virtual void DeinitWebView(WebView wv) {}
}
}