// Path: Web/src/main/java/org/emerjoin/hi/web/HiCDI.java
// public class HiCDI {
// 
//     public static void shouldHaveCDIScope(Class clazz) throws NoCDIScopeException{
// 
//         //TODO: This shouldn't throw and exception because there might be custom scopes
//         Annotation scope1 = clazz.getAnnotation(RequestScoped.class);
//         Annotation scope2 = clazz.getAnnotation(ApplicationScoped.class);
//         Annotation scope3 = clazz.getAnnotation(SessionScoped.class);
//         Annotation scope4 = clazz.getAnnotation(ConversationScoped.class);
//         Annotation scope5 = clazz.getAnnotation(Dependent.class);
// 
//         if(scope1==null&&scope2==null&&scope3==null&&scope4==null&&scope5==null)
//             throw new NoCDIScopeException(clazz);
// 
//     }
// 
// }


import org.emerjoin.hi.web.HiCDI;
import org.emerjoin.hi.web.meta.Frontier;
import org.emerjoin.hi.web.meta.Nullable;
import javax.servlet.ServletException;
import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
import java.lang.reflect.Parameter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
                beanMethod.addParam(methodParam);
                i++;

            }

            bean.addMethod(beanMethod);

        }


    }


    public FrontierClass[] crawl(List<Class> beansList) throws ServletException{

        FrontierClass[] beanClasses =  null;
        try {

            List<FrontierClass> beanClassList = new ArrayList<FrontierClass>();
            String simpleName = "";

            for (Class beanClass : beansList) {
                if(beanClass.isInterface())
                    continue;

                String beanClassName = beanClass.getCanonicalName();

                try {
                    beanClass = Class.forName(beanClassName.toString());
                    simpleName = beanClass.getSimpleName();
// Path: Web/src/main/java/org/emerjoin/hi/web/HiCDI.java
// public class HiCDI {
// 
//     public static void shouldHaveCDIScope(Class clazz) throws NoCDIScopeException{
// 
//         //TODO: This shouldn't throw and exception because there might be custom scopes
//         Annotation scope1 = clazz.getAnnotation(RequestScoped.class);
//         Annotation scope2 = clazz.getAnnotation(ApplicationScoped.class);
//         Annotation scope3 = clazz.getAnnotation(SessionScoped.class);
//         Annotation scope4 = clazz.getAnnotation(ConversationScoped.class);
//         Annotation scope5 = clazz.getAnnotation(Dependent.class);
// 
//         if(scope1==null&&scope2==null&&scope3==null&&scope4==null&&scope5==null)
//             throw new NoCDIScopeException(clazz);
// 
//     }
// 
// }


// Path: Web/src/main/java/org/emerjoin/hi/web/frontier/model/FrontierBeansCrawler.java
import org.emerjoin.hi.web.HiCDI;
import org.emerjoin.hi.web.meta.Frontier;
import org.emerjoin.hi.web.meta.Nullable;
import javax.servlet.ServletException;
import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
import java.lang.reflect.Parameter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

                beanMethod.addParam(methodParam);
                i++;

            }

            bean.addMethod(beanMethod);

        }


    }


    public FrontierClass[] crawl(List<Class> beansList) throws ServletException{

        FrontierClass[] beanClasses =  null;
        try {

            List<FrontierClass> beanClassList = new ArrayList<FrontierClass>();
            String simpleName = "";

            for (Class beanClass : beansList) {
                if(beanClass.isInterface())
                    continue;

                String beanClassName = beanClass.getCanonicalName();

                try {
                    beanClass = Class.forName(beanClassName.toString());
                    simpleName = beanClass.getSimpleName();
                    HiCDI.shouldHaveCDIScope(beanClass);