001    package org.kuali.student.lum.program.client.rpc;
002    
003    import com.google.gwt.user.client.rpc.AsyncCallback;
004    import org.kuali.student.common.ui.client.service.BaseDataOrchestrationRpcServiceAsync;
005    import org.kuali.student.core.dto.StatusInfo;
006    import org.kuali.student.lum.program.client.requirements.ProgramRequirementsDataModel;
007    import org.kuali.student.lum.program.dto.ProgramRequirementInfo;
008    
009    import java.util.List;
010    import java.util.Map;
011    
012    public interface MajorDisciplineRpcServiceAsync extends BaseDataOrchestrationRpcServiceAsync {
013        public void getProgramRequirements(List<String> programRequirementIds, AsyncCallback<List<ProgramRequirementInfo>> callback);
014        public void storeProgramRequirements(Map<Integer, ProgramRequirementsDataModel.requirementState> states, Map<Integer, ProgramRequirementInfo> progReqs, AsyncCallback<Map<Integer, ProgramRequirementInfo>> async);    
015        public void createProgramRequirement(ProgramRequirementInfo programRequirementInfo, AsyncCallback<ProgramRequirementInfo> callback);
016        public void deleteProgramRequirement(String programRequirementId, AsyncCallback<StatusInfo> callback);
017        public void updateProgramRequirement(ProgramRequirementInfo programRequirementInfo, AsyncCallback<ProgramRequirementInfo> callback);
018        public void isLatestVersion(String versionIndId, Long versionSequenceNumber, AsyncCallback<Boolean> callback);
019    }