?? pluginregistry.java
字號:
/**
* -- Copyright (C) 2006 Hisham Khalil. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
*
* Author: Hisham Khalil <hishberlin@hotmail.com>
*/
package connex.session.plugin;
import java.util.Hashtable;
import java.util.Collection;
import java.util.Enumeration;
public class PluginRegistry {
private Hashtable plugins = new Hashtable();
private Hashtable descriptors = new Hashtable();
/**
* @directed
* @link aggregationByValue
* @supplierCardinality 0..*
* @clientCardinality 1
*/
private Plugin lnkPlugin;
/**
* @directed
* @link aggregationByValue
* @supplierCardinality 0..*
* @clientCardinality 1
*/
private PluginDescriptor lnkPluginDescriptor;
public PluginRegistry() {
}
protected void registerPlugin(String id, Plugin obj) {
plugins.put(id, obj);
}
protected Plugin getPlugin(String id) {
if (plugins.containsKey(id)) {
return (Plugin) plugins.get(id);
}
return null;
}
protected boolean isRegistered(String id){
if(descriptors.contains(id)){
return true;
}
return false;
}
protected void registerDescriptor(String id, PluginDescriptor pd) {
descriptors.put(id, pd);
}
protected PluginDescriptor getDescriptor(String id) {
return (PluginDescriptor) descriptors.get(id);
}
protected void removePlugin(String id) {
Plugin p = (Plugin) plugins.remove(id);
p.stopPlugin();
}
protected void getPluginDescriptor(int id) {
}
/**
*Returns a Collection of all PluginDescriptor objects
*one for each entry point detected
*/
public Collection getAllDescriptors() {
if (descriptors == null) {
return null;
}
return descriptors.values();
}
public Collection getAllPlugins() {
if (plugins == null) {
return null;
}
return plugins.values();
}
protected void clear() {
descriptors.clear();
Enumeration pluginsnum = (Enumeration) plugins.elements();
while (pluginsnum.hasMoreElements()) {
Plugin pd = (Plugin) pluginsnum.nextElement();
pd.stopPlugin();
}
plugins.clear();
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -