opensrp-anc/src/main/java/org/smartregister/anc/library/contract/RegisterFragmentContract.java
package org.smartregister.anc.library.contract;
import org.json.JSONArray;
import org.smartregister.anc.library.cursor.AdvancedMatrixCursor;
import org.smartregister.configurableviews.model.Field;
import org.smartregister.configurableviews.model.RegisterConfiguration;
import org.smartregister.configurableviews.model.ViewConfiguration;
import org.smartregister.domain.Response;
import org.smartregister.view.contract.BaseRegisterFragmentContract;
import java.util.List;
import java.util.Map;
import java.util.Set;
public interface RegisterFragmentContract {
interface View extends BaseRegisterFragmentContract.View {
void initializeAdapter(Set<org.smartregister.configurableviews.model.View> visibleColumns);
void recalculatePagination(AdvancedMatrixCursor matrixCursor);
}
interface Presenter extends BaseRegisterFragmentContract.Presenter {
void updateSortAndFilter(List<Field> filterList, Field sortField);
AdvancedMatrixCursor getMatrixCursor();
}
interface Model {
RegisterConfiguration defaultRegisterConfiguration();
ViewConfiguration getViewConfiguration(String viewConfigurationIdentifier);
Set<org.smartregister.configurableviews.model.View> getRegisterActiveColumns(String viewConfigurationIdentifier);
String countSelect(String tableName, String mainCondition);
String mainSelect(String tableName, String mainCondition);
String getFilterText(List<Field> filterList, String filter);
String getSortText(Field sortField);
Map<String, String> createEditMap(String ancId);
AdvancedMatrixCursor createMatrixCursor(Response<String> response);
JSONArray getJsonArray(Response<String> response);
}
}