From 2270b252656146d9d74b84665a7ace6c3139db30 Mon Sep 17 00:00:00 2001 From: Mike Mazur Date: Thu, 31 Jul 2008 09:24:28 +0000 Subject: Thanks, sempuki, for a patch that moves all Grid Server's plugins to PluginLoader. Fix issue 1871. --- OpenSim/Framework/PluginLoader.cs | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) (limited to 'OpenSim/Framework/PluginLoader.cs') diff --git a/OpenSim/Framework/PluginLoader.cs b/OpenSim/Framework/PluginLoader.cs index 616fa3e..3bc4de6 100644 --- a/OpenSim/Framework/PluginLoader.cs +++ b/OpenSim/Framework/PluginLoader.cs @@ -96,6 +96,11 @@ namespace OpenSim.Framework get { return loaded; } } + public T Plugin + { + get { return (loaded.Count == 1)? loaded [0] : default (T); } + } + public PluginLoader () { Initialiser = new PluginInitialiserBase(); @@ -114,11 +119,26 @@ namespace OpenSim.Framework initialise_plugin_dir_ (dir); } - public void AddExtensionPoint (string extpoint) + public void Add (string extpoint) { + if (extpoints.Contains (extpoint)) + return; + extpoints.Add (extpoint); } + public void Add (string extpoint, IPluginConstraint cons) + { + Add (extpoint); + AddConstraint (extpoint, cons); + } + + public void Add (string extpoint, IPluginFilter filter) + { + Add (extpoint); + AddFilter (extpoint, filter); + } + public void AddConstraint (string extpoint, IPluginConstraint cons) { constraints.Add (extpoint, cons); @@ -131,7 +151,7 @@ namespace OpenSim.Framework public void Load (string extpoint) { - AddExtensionPoint (extpoint); + Add (extpoint); Load(); } -- cgit v1.1