001    /**
002     * Copyright 2010 The Kuali Foundation Licensed under the
003     * Educational Community License, Version 2.0 (the "License"); you may
004     * not use this file except in compliance with the License. You may
005     * obtain a copy of the License at
006     *
007     * http://www.osedu.org/licenses/ECL-2.0
008     *
009     * Unless required by applicable law or agreed to in writing,
010     * software distributed under the License is distributed on an "AS IS"
011     * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
012     * or implied. See the License for the specific language governing
013     * permissions and limitations under the License.
014     */
015    
016    package org.kuali.student.common.ui.client.service;
017    
018    import java.util.List;
019    import java.util.Map;
020    
021    import org.kuali.student.r1.common.assembly.data.Data;
022    import org.kuali.student.r1.common.assembly.data.Metadata;
023    import org.kuali.student.r1.common.rice.authorization.PermissionType;
024    import org.kuali.student.r2.common.dto.ValidationResultInfo;
025    
026    import com.google.gwt.user.client.rpc.AsyncCallback;
027    
028    public interface BaseDataOrchestrationRpcServiceAsync{
029            
030            //Data operations
031            public void getData(String dataId, AsyncCallback<Data> callback);
032            
033            public void getMetadata(String id, Map<String,String> idType, AsyncCallback<Metadata> callback);
034    
035            public void saveData(Data data, AsyncCallback<DataSaveResult> callback);
036            
037            public void validate(Data data, AsyncCallback<List<ValidationResultInfo>> callback);
038            
039            public void isAuthorized(PermissionType type, Map<String,String> attributes, AsyncCallback<Boolean> callback);
040    
041    }