package org.intermine.app.storage; /* * Copyright (C) 2015 InterMine * * This code may be freely distributed and modified under the * terms of the GNU Lesser General Public Licence. This should * be distributed with the code. See the LICENSE file for more * information or http://www.gnu.org/copyleft/lesser.html. * */ import org.intermine.app.core.Gene; import org.intermine.app.core.model.Model; import java.util.List; import java.util.Map; import java.util.Set; /** * @author Daria Komkova <Daria.Komkova @ hotmail.com> */ public interface Storage { String USER_TOKEN_KEY = "user_token_key_"; String SELECTED_MINE_NAMES_KEY = "selected_mine_names_key"; String MINE_NAMES_KEY = "mine_names_key"; String MINE_URL_KEY = "mine_url_key_"; String MINE_URL_WEB_APP_KEY = "mine_url_web_app_key_"; String TYPE_FIELDS_KEY = "type_fields_key_"; String WORKING_MINE_NAME_KEY = "working_mine_name_key"; String getUserToken(String mineName); void setUserToken(String mineName, String token); Map<String, String> getMineToUserTokenMap(); Model getMineModel(String mineName); Map<String, Model> getMineToModelMap(); void addMineModel(String mineName, Model model); void setWorkingMineName(String mineName); String getWorkingMineName(); void setMineUrl(String mine, String url); String getMineUrl(String mine); void setMineWebAppUrl(String mine, String url); String getMineWebAppUrl(String mine); Set<String> getSelectedMineNames(); void setSelectedMineNames(Set<String> selectedMineNames); Set<String> getMineNames(); void setMineNames(Set<String> mineNames); Map<String, String> getMineNameToUrlMap(); void setTypeFields(String mineName, Map<String, List<String>> typeFields); Map<String, List<String>> getTypeFields(String mineName); List<Gene> getGeneFavorites(); void addGeneToFavorites(Gene gene); }