001package org.kuali.student.enrollment.class2.courseoffering.krms.termresolver;
002
003import org.kuali.rice.krms.api.engine.TermResolutionException;
004import org.kuali.rice.krms.api.engine.TermResolver;
005import org.kuali.student.r2.core.constants.KSKRMSServiceConstants;
006
007import java.util.Collections;
008import java.util.HashSet;
009import java.util.Map;
010import java.util.Set;
011
012/**
013 * @author Kuali Student Team
014 */
015public class ProgramCoursesOrgDurationTermResolver implements TermResolver<Integer> {
016
017    @Override
018    public Set<String> getPrerequisites() {
019        Set<String> prereqs = new HashSet<String>(2);
020        prereqs.add(KSKRMSServiceConstants.TERM_PREREQUISITE_PERSON_ID);
021        prereqs.add(KSKRMSServiceConstants.TERM_PREREQUISITE_CONTEXTINFO);
022        return Collections.unmodifiableSet(prereqs);
023    }
024
025    @Override
026    public String getOutput() {
027        return KSKRMSServiceConstants.TERM_RESOLVER_ADMITTEDTOPROGRAMLIMITCOURSESINORGFORDURATION;
028    }
029
030    @Override
031    public Set<String> getParameterNames() {
032        Set<String> parameters = new HashSet<String>(2);
033        parameters.add(KSKRMSServiceConstants.TERM_PARAMETER_TYPE_ORGANIZATION_KEY);
034        parameters.add(KSKRMSServiceConstants.TERM_PARAMETER_TYPE_DURATION_KEY);
035        parameters.add(KSKRMSServiceConstants.TERM_PARAMETER_TYPE_DURATION_TYPE_KEY);
036        return Collections.unmodifiableSet(parameters);
037    }
038
039    @Override
040    public int getCost() {
041        return 0;
042    }
043
044    @Override
045    public Integer resolve(Map<String, Object> stringObjectMap, Map<String, String> stringStringMap) throws TermResolutionException {
046        return null;
047    }
048}