All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.jdon.container.annotation.AnnotationHolder Maven / Gradle / Ivy

package com.jdon.container.annotation;

import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;

import com.jdon.container.access.TargetMetaDefHolder;

public class AnnotationHolder {

	public final static String NAME = AnnotationHolder.class.getSimpleName();

	// key component name, class is Component class
	private Map classes;

	// key Component class, class is component name
	private Map xClasses;
	private Map interceptors;
	private TargetMetaDefHolder targetMetaDefHolder;

	public AnnotationHolder() {
		this.classes = new LinkedHashMap();
		this.xClasses = new LinkedHashMap();
		this.interceptors = new LinkedHashMap();
		this.targetMetaDefHolder = new TargetMetaDefHolder();
	}

	public void addComponent(String name, Class componentClass) {
		classes.put(name, componentClass);
		xClasses.put(componentClass, name);
	}

	public Set getComponentNames() {
		return classes.keySet();
	}

	public Class getComponentClass(String name) {
		return classes.get(name);
	}

	public String getComponentName(Class componentClass) {
		return xClasses.get(componentClass);
	}

	public Map getInterceptors() {
		return interceptors;
	}

	public Map getxClasses() {
		return xClasses;
	}

	public TargetMetaDefHolder getTargetMetaDefHolder() {
		return targetMetaDefHolder;
	}

	public void setTargetMetaDefHolder(TargetMetaDefHolder targetMetaDefHolder) {
		this.targetMetaDefHolder = targetMetaDefHolder;
	}

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy