svn-gvsig-desktop / tags / v1_1_Build_1013 / libraries / libDriverManager / src / com / hardcode / driverManager / DriverClassLoaderManager.java @ 13521
History | View | Annotate | Download (1.36 KB)
1 | 467 | fernando | package com.hardcode.driverManager; |
---|---|---|---|
2 | |||
3 | import java.util.Hashtable; |
||
4 | import java.util.Vector; |
||
5 | |||
6 | |||
7 | /**
|
||
8 | * Esta clase mantiene la informaci?n sobre los classloader de los plugins con
|
||
9 | * la intenci?n de poder obtener dado el nombre de una clase la lista de
|
||
10 | * PluginClassLoader que pueden cargarla
|
||
11 | *
|
||
12 | * @author Fernando Gonz?lez Cort?s
|
||
13 | */
|
||
14 | public abstract class DriverClassLoaderManager { |
||
15 | private static Hashtable nombresLista = new Hashtable(); |
||
16 | |||
17 | /**
|
||
18 | * Registra un class loader para una clase determinada
|
||
19 | *
|
||
20 | * @param className Nombre de la clase
|
||
21 | * @param cl Classloader que puede cargar la clase
|
||
22 | */
|
||
23 | public static void registerClass(String className, ClassLoader cl) { |
||
24 | Vector lista = (Vector) nombresLista.get(className); |
||
25 | |||
26 | if (lista == null) { |
||
27 | lista = new Vector(); |
||
28 | lista.add(cl); |
||
29 | nombresLista.put(className, lista); |
||
30 | } else {
|
||
31 | lista.add(cl); |
||
32 | } |
||
33 | } |
||
34 | |||
35 | /**
|
||
36 | * Devuelve la lista de classloader que pueden cargar la clase
|
||
37 | *
|
||
38 | * @param className Nombre de la clase de la cual se quiere obtener un
|
||
39 | * classloader que la cargue
|
||
40 | *
|
||
41 | * @return Vector de classLoaders que pueden cargar una clase con ese
|
||
42 | * nombre
|
||
43 | */
|
||
44 | public static Vector getClassLoaderList(String className) { |
||
45 | return (Vector) nombresLista.get(className); |
||
46 | } |
||
47 | } |