package com.oopdev.io.core.manager; import java.util.LinkedHashMap; import java.util.Map; import java.util.Set; import com.oopdev.io.core.component.loader.IOComponentMap; import com.oopdev.io.core.component.loader.IOScopeType; import com.oopdev.io.core.component.reflects.pojo.IOClass; /** * * @author kamilbukum * */ public class IOManagerMap { private static final Map<String, IOAbstractManager> frameworkManagersMap=new LinkedHashMap<String, IOAbstractManager>(); /** * * @param abstractManager */ public static final void addManager(IOAbstractManager abstractManager){ if(abstractManager!=null){ String managerName=abstractManager.getClass().getName(); if(!frameworkManagersMap.containsKey(managerName)&&!IOComponentMap.getComponentclassmap().containsKey(managerName)){ frameworkManagersMap.put(managerName, abstractManager); IOComponentMap.getComponentclassmap().put(managerName, new LinkedHashMap<String, IOClass>()); IOComponentMap.getComponentscopemap().put(managerName, new LinkedHashMap<String, IOScopeType>()); } } } /** * * @param className * @return */ public static final IOAbstractManager getManager(String className){ return frameworkManagersMap.get(className); } /** * * @return */ public static final Set<String> getManagerKeyList(){ return frameworkManagersMap.keySet(); } }