2 * Copyright (c) 2005 Your Corporation. All Rights Reserved.
4 package com
.intellij
.util
.xml
;
6 import com
.intellij
.psi
.xml
.XmlTag
;
8 import java
.util
.HashMap
;
14 public class ClassChooserManager
{
15 private static final Map
<Class
, ClassChooser
> ourClassChoosers
= new HashMap
<Class
, ClassChooser
>();
17 public static ClassChooser
getClassChooser(final Class aClass
) {
18 final ClassChooser classChooser
= ourClassChoosers
.get(aClass
);
19 return classChooser
!= null ? classChooser
: new ClassChooser() {
20 public Class
chooseClass(final XmlTag tag
) {
24 public void distinguishTag(final XmlTag tag
, final Class aClass
) {
29 public static <T
extends DomElement
> void registerClassChooser(final Class
<T
> aClass
, final ClassChooser
<T
> classChooser
) {
30 ourClassChoosers
.put(aClass
, classChooser
);
33 public static <T
extends DomElement
> void unregisterClassChooser(Class
<T
> aClass
) {
34 ourClassChoosers
.remove(aClass
);