package net.northking.cctp.element.core.scanner;

import net.northking.cctp.element.core.Library;
import net.northking.cctp.element.core.RegisterInfo;
import net.northking.cctp.element.core.ResourceLoader;

import java.util.Collection;
import java.util.HashSet;

/**
 * LibraryDefinition
 *
 * @author fengxiang.zhang
 * @since 1.0
 */
public class LibraryDefinition {

    /**
     * Library register Info
     */
    private RegisterInfo registerInfo;

    /**
     * Library resource loader
     */
    private ResourceLoader resourceLoader;

    /**
     * Library Class
     */
    private Class<Library> libraryClass;

    /**
     * Scanned annotation bean classes
     */
    private Collection<Class<?>> beanClass = new HashSet<>();

    public RegisterInfo getRegisterInfo() {
        return registerInfo;
    }

    public void setRegisterInfo(RegisterInfo registerInfo) {
        this.registerInfo = registerInfo;
    }

    public ResourceLoader getResourceLoader() {
        return resourceLoader;
    }

    public void setResourceLoader(ResourceLoader resourceLoader) {
        this.resourceLoader = resourceLoader;
    }

    public Class<Library> getLibraryClass() {
        return libraryClass;
    }

    public void setLibraryClass(Class<Library> libraryClass) {
        this.libraryClass = libraryClass;
    }

    public Collection<Class<?>> getBeanClass() {
        return beanClass;
    }

    public void setBeanClass(Collection<Class<?>> beanClass) {
        this.beanClass = beanClass;
    }
}
