diff options
Diffstat (limited to 'propertysheet/src/org/eclipse/wb/internal/core/utils/reflect/ClassMap.java')
-rw-r--r-- | propertysheet/src/org/eclipse/wb/internal/core/utils/reflect/ClassMap.java | 75 |
1 files changed, 0 insertions, 75 deletions
diff --git a/propertysheet/src/org/eclipse/wb/internal/core/utils/reflect/ClassMap.java b/propertysheet/src/org/eclipse/wb/internal/core/utils/reflect/ClassMap.java deleted file mode 100644 index ce0d339..0000000 --- a/propertysheet/src/org/eclipse/wb/internal/core/utils/reflect/ClassMap.java +++ /dev/null @@ -1,75 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2011 Google, Inc. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Google, Inc. - initial API and implementation - *******************************************************************************/ -package org.eclipse.wb.internal.core.utils.reflect; - -import java.util.HashMap; -import java.util.Map; - -/** - * {@link Map}-like interface for mapping {@link Class} to value. - * - * @author scheglov_ke - * @coverage core.util - */ -public final class ClassMap<V> { - //////////////////////////////////////////////////////////////////////////// - // - // Constructor - // - //////////////////////////////////////////////////////////////////////////// - /** - * Creates new instance of {@link ClassMap}. - */ - public static <V> ClassMap<V> create() { - return new ClassMap<V>(); - } - - //////////////////////////////////////////////////////////////////////////// - // - // Map - // - //////////////////////////////////////////////////////////////////////////// - public void put(Class<?> key, V value) { - getMap(key).put(key, value); - } - - public V get(Class<?> key) { - return getMap(key).get(key); - } - - public void remove(Class<?> key) { - getMap(key).remove(key); - } - - public void clear(ClassLoader classLoader) { - getMap(classLoader).clear(); - } - - //////////////////////////////////////////////////////////////////////////// - // - // Implementation - // - //////////////////////////////////////////////////////////////////////////// - private Map<Class<?>, V> getMap(Class<?> key) { - ClassLoader classLoader = key.getClassLoader(); - return getMap(classLoader); - } - - @SuppressWarnings("unchecked") - private Map<Class<?>, V> getMap(ClassLoader classLoader) { - Object map = ClassLoaderLocalMap.get(classLoader, this); - if (map == null) { - map = new HashMap<Class<?>, V>(); - ClassLoaderLocalMap.put(classLoader, this, map); - } - return (Map<Class<?>, V>) map; - } -} |