Subversion Repositories bacoAlunos

Rev

Rev 1315 | Rev 1326 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

package pt.estgp.estgweb.domain;

import org.apache.log4j.Logger;
import pt.estgp.estgweb.utils.ConfigProperties;

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.text.MessageFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Locale;

/**
 * Created by jorgemachado on 09/03/16.
 */

public class QuestionarioImpl extends Questionario
{

    private static final 1.5.0/docs/api/java/util/logging/Logger.html">Logger logger = 1.5.0/docs/api/java/util/logging/Logger.html">Logger.getLogger(QuestionarioImpl.class);

    public enum 1.5.0/docs/api/org/omg/PortableServer/POAManagerPackage/State.html">State
    {

        CREATED(1),
        ASSIGNATION_DETAILS(2),
        ASSIGNING_ANSWERS_PROCESSEMENT(3),
        ASSIGNED_ANSWERS(4),
        PROCESSING(5),
        PROCESSING_WITH_ANSWERS(6),
        STOPED_WITH_ANSWERS(6),
        CLOSED(7),
        PROCESSING_OLAP(8),
        OLAP(9);

        private int pos = 1;

        1.5.0/docs/api/org/omg/PortableServer/POAManagerPackage/State.html">State(int pos)
        {
            this.pos = pos;
        }

        public static 1.5.0/docs/api/org/omg/PortableServer/POAManagerPackage/State.html">State parse(1.5.0/docs/api/java/lang/String.html">String state)
        {
            for(1.5.0/docs/api/org/omg/PortableServer/POAManagerPackage/State.html">State s: 1.5.0/docs/api/org/omg/PortableServer/POAManagerPackage/State.html">State.values())
            {
                if(s.name().equals(state))
                    return s;
            }
            return CREATED;
        }


        public int getPosition()
        {
            return pos;
        }
    }




    public QuestionarioImpl() {
        super();

        setState(1.5.0/docs/api/org/omg/PortableServer/POAManagerPackage/State.html">State.CREATED.name());

        1.5.0/docs/api/java/text/SimpleDateFormat.html">SimpleDateFormat sdf = new 1.5.0/docs/api/java/text/SimpleDateFormat.html">SimpleDateFormat("MMMM yyyy",new 1.5.0/docs/api/java/util/Locale.html">Locale("pt"));
        1.5.0/docs/api/java/lang/String.html">String month = sdf.format(new 5+0%2Fdocs%2Fapi+Date">Date());
        1.5.0/docs/api/java/lang/String.html">String introHtml = ConfigProperties.getProperty("questionario.intro.text");

        1.5.0/docs/api/java/lang/String.html">String introWithMonth = 1.5.0/docs/api/java/text/MessageFormat.html">MessageFormat.format(introHtml, month);

        setIntroHtml(introWithMonth);
        setGroup1Title(ConfigProperties.getProperty("questionario.group1.title"));
        setGroup2Title(ConfigProperties.getProperty("questionario.group2.title"));
        setGroup3Title(ConfigProperties.getProperty("questionario.group3.title"));
        setGroup4Title(ConfigProperties.getProperty("questionario.group4.title"));
        setGroup5Title(ConfigProperties.getProperty("questionario.group5.title"));
        setGroup6Title(ConfigProperties.getProperty("questionario.group6.title"));
        setGroup7Title(ConfigProperties.getProperty("questionario.group7.title"));
        setGroup8Title(ConfigProperties.getProperty("questionario.group8.title"));
        setGroup9Title(ConfigProperties.getProperty("questionario.group9.title"));
        setGroup10Title(ConfigProperties.getProperty("questionario.group10.title"));


        setGroup1Code(ConfigProperties.getProperty("questionario.group1.code"));
        setGroup2Code(ConfigProperties.getProperty("questionario.group2.code"));
        setGroup3Code(ConfigProperties.getProperty("questionario.group3.code"));
        setGroup4Code(ConfigProperties.getProperty("questionario.group4.code"));
        setGroup5Code(ConfigProperties.getProperty("questionario.group5.code"));
        setGroup6Code(ConfigProperties.getProperty("questionario.group6.code"));
        setGroup7Code(ConfigProperties.getProperty("questionario.group7.code"));
        setGroup8Code(ConfigProperties.getProperty("questionario.group8.code"));
        setGroup9Code(ConfigProperties.getProperty("questionario.group9.code"));
        setGroup10Code(ConfigProperties.getProperty("questionario.group10.code"));


        for(int i = 1; i <=40;i++)
        {

            try {
                1.5.0/docs/api/java/lang/String.html">String group = ConfigProperties.getProperty("questionario.p" + i + ".group");
                1.5.0/docs/api/java/lang/reflect/Method.html">Method m = this.getClass().getMethod("setP" + i + "Group",1.5.0/docs/api/java/lang/String.html">String.class);
                m.invoke(this,group);

                1.5.0/docs/api/java/lang/String.html">String pergunta = ConfigProperties.getProperty("questionario.p" + i);
                1.5.0/docs/api/java/lang/reflect/Method.html">Method m2 = this.getClass().getMethod("setP" + i,1.5.0/docs/api/java/lang/String.html">String.class);
                m2.invoke(this,pergunta);
            } catch (1.5.0/docs/api/java/lang/NoSuchMethodException.html">NoSuchMethodException e) {
                e.printStackTrace();
            } catch (1.5.0/docs/api/java/lang/reflect/InvocationTargetException.html">InvocationTargetException e) {
                e.printStackTrace();
            } catch (1.5.0/docs/api/java/lang/IllegalAccessException.html">IllegalAccessException e) {
                e.printStackTrace();
            }
        }
    }

    static List<IAnswersProcessor> answersProcessors = null;

    public IAnswersProcessor getiAnswersProcessorClass()
    {
        if(getiAnswersProcessor() != null)
        {
            try {
                return (IAnswersProcessor) 1.5.0/docs/api/java/lang/Class.html">Class.forName(getiAnswersProcessor()).newInstance();
            } catch (1.5.0/docs/api/java/lang/Exception.html">Exception e) {
                logger.error(e,e);
            }
        }

        return new IAnswersProcessor() {
            @1.5.0/docs/api/java/lang/Override.html">Override
            public 1.5.0/docs/api/java/lang/String.html">String getHistoryDriveConstraint() {
                return null;
            }

            @1.5.0/docs/api/java/lang/Override.html">Override
            public 1.5.0/docs/api/java/lang/String.html">String getTitle() {
                return "---";
            }

            @1.5.0/docs/api/java/lang/Override.html">Override
            public 1.5.0/docs/api/java/lang/String.html">String getAfetacoesManagementForward() {
                return null;
            }
        };
    }

    public static List<IAnswersProcessor> getIAnswerProcessors()
    {
        if(answersProcessors == null)
        {
            answersProcessors = new ArrayList<IAnswersProcessor>();
            List<String> processors = ConfigProperties.getListValues("pt.estgp.estgweb.domain.IAnswersProcessor.");
            for(1.5.0/docs/api/java/lang/String.html">String p: processors)
            {
                try {
                    IAnswersProcessor iAnswersProcessor = (IAnswersProcessor) 1.5.0/docs/api/java/lang/Class.html">Class.forName(p).newInstance();
                    answersProcessors.add(iAnswersProcessor);
                } catch (1.5.0/docs/api/java/lang/Exception.html">Exception e) {
                    logger.error(e, e);
                }
            }
        }
        return answersProcessors;
    }

    public static void main(1.5.0/docs/api/java/lang/String.html">String[] args)
    {
        QuestionarioImpl q =  new QuestionarioImpl();
        1.5.0/docs/api/java/lang/System.html">System.out.println(q);
    }

    public 1.5.0/docs/api/org/omg/PortableServer/POAManagerPackage/State.html">State getStateEnum()
    {
        return 1.5.0/docs/api/org/omg/PortableServer/POAManagerPackage/State.html">State.parse(getState());
    }
}