Package com.trendmicro.tme.grapheditor

Source Code of com.trendmicro.tme.grapheditor.IocProviderFactory

package com.trendmicro.tme.grapheditor;

import java.util.Map;

import com.sun.jersey.core.spi.component.ComponentContext;
import com.sun.jersey.core.spi.component.ComponentScope;
import com.sun.jersey.core.spi.component.ioc.IoCComponentProvider;
import com.sun.jersey.core.spi.component.ioc.IoCComponentProviderFactory;
import com.sun.jersey.core.spi.component.ioc.IoCFullyManagedComponentProvider;

public class IocProviderFactory implements IoCComponentProviderFactory {
    private Map<Class<?>, Object> classMap;
   
    public IocProviderFactory(Map<Class<?>, Object> classMap) {
        this.classMap = classMap;
    }
   
    @Override
    public IoCComponentProvider getComponentProvider(Class<?> c) {
        final Object o = classMap.get(c);
        if(o == null) {
            return null;
        }
        return new IoCFullyManagedComponentProvider() {
            @Override
            public Object getInstance() {
                return o;
            }
           
            @Override
            public ComponentScope getScope() {
                return ComponentScope.Singleton;
            }
        };
    }
   
    @Override
    public IoCComponentProvider getComponentProvider(ComponentContext cc, Class<?> c) {
        return getComponentProvider(c);
    }
}
TOP

Related Classes of com.trendmicro.tme.grapheditor.IocProviderFactory

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.