/* * Copyright (C) 2013 WhiteCat 白猫 (www.thinkandroid.cn) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.ta.util.config; /** * @Title TAIConfig * @Package com.ta.util.config * @Description 配置器的接口 * @author 白猫 * @date 2013-4-3 上午 9:35 * @version V1.0 */ public interface TAIConfig { /** * 加载配置器 * */ void loadConfig(); /** * 判断是否已经加载配置器 * * @return 返回是否加载的信息,false代表没有加载,true代表加载 */ Boolean isLoadConfig(); /** * 开启控制器 */ void open(); /** * 关闭配置器 */ void close(); /** * 判断配置器是否关闭 * * @return 如果为true则关闭,如果为false则开启 */ boolean isClosed(); /** * 设置String类型的配置值 * * @param key * 配置名 * @param value * 配置值 */ void setString(String key, String value); /** * 设置int类型的配置值 * * @param key * 配置名 * @param value * 配置值 */ void setInt(String key, int value); /** * 设置Boolean类型的配置值 * * @param key * 配置名 * @param value * 配置值 */ void setBoolean(String key, Boolean value); /** * 设置Byte类型的配置值 * * @param key * 配置名 * @param value * 配置值 */ void setByte(String key, byte[] value); /** * 设置Short类型的配置值 * * @param key * 配置名 * @param value * 配置值 */ void setShort(String key, short value); /** * 设置Long类型的配置值 * * @param key * 配置名 * @param value * 配置值 */ void setLong(String key, long value); /** * 设置Float类型的配置值 * * @param key * 配置名 * @param value * 配置值 */ void setFloat(String key, float value); /** * 设置Double类型的配置值 * * @param key * 配置名 * @param value * 配置值 */ void setDouble(String key, double value); // 以资源设置 /** * 设置String类型的配置值 * * @param resID * 资源ID * @param value * 配置值 */ void setString(int resID, String value); /** * 设置Int类型的配置值 * * @param resID * 资源ID * @param value * 配置值 */ void setInt(int resID, int value); /** * 设置Boolean类型的配置值 * * @param resID * 资源ID * @param value * 配置值 */ void setBoolean(int resID, Boolean value); /** * 设置Byte类型的配置值 * * @param resID * 资源ID * @param value * 配置值 */ void setByte(int resID, byte[] value); /** * 设置Short类型的配置值 * * @param resID * 资源ID * @param value * 配置值 */ void setShort(int resID, short value); /** * 设置Long类型的配置值 * * @param resID * 资源ID * @param value * 配置值 */ void setLong(int resID, long value); /** * 设置Float类型的配置值 * * @param resID * 资源ID * @param value * 配置值 */ void setFloat(int resID, float value); /** * 设置Double类型的配置值 * * @param resID * 资源ID * @param value * 配置值 */ void setDouble(int resID, double value); /** * 以对象类型来配置,一组配置值 * * @param entity * 传入的实体 * */ void setConfig(Object entity); // 以下为get方法 /** * 返回String类型的配置值 * * @param key * 配置名 * @return 返回配置值配置值 */ String getString(String key, String defaultValue); /** * 返回int类型的配置值 * * @param key * 配置名 * @return 返回配置值配置值 */ int getInt(String key, int defaultValue); /** * 返回Boolean类型的配置值 * * @param key * 配置名 * @return 返回配置值配置值 */ boolean getBoolean(String key, Boolean defaultValue); /** * 返回Byte类型的配置值 * * @param key * 配置名 * @return 返回配置值配置值 */ byte[] getByte(String key, byte[] defaultValue); /** * 返回Short类型的配置值 * * @param key * 配置名 * @return 返回配置值配置值 */ short getShort(String key, Short defaultValue); /** * 返回Long类型的配置值 * * @param key * 配置名 * @return 返回配置值配置值 */ long getLong(String key, Long defaultValue); /** * 返回Float类型的配置值 * * @param key * 配置名 * @return 返回配置值配置值 */ float getFloat(String key, Float defaultValue); /** * 返回Double类型的配置值 * * @param key * 配置名 * @return 返回配置值配置值 */ double getDouble(String key, Double defaultValue); // 资源型获取以下为get方法 /** * 返回String类型的配置值 * * @param resID * 资源ID * @return 返回配置值配置值 */ String getString(int resID, String defaultValue); /** * 返回int类型的配置值 * * @param resID * 资源ID * @return 返回配置值配置值 */ int getInt(int resID, int defaultValue); /** * 返回Boolean类型的配置值 * * @param resID * 资源ID * @return 返回配置值配置值 */ boolean getBoolean(int resID, Boolean defaultValue); /** * 返回Byte类型的配置值 * * @param resID * 资源ID * @return 返回配置值配置值 */ byte[] getByte(int resID, byte[] defaultValue); /** * 返回Short类型的配置值 * * @param resID * 资源ID * @return 返回配置值配置值 */ short getShort(int resID, Short defaultValue); /** * 返回Long类型的配置值 * * @param resID * 资源ID * @return 返回配置值配置值 */ long getLong(int resID, Long defaultValue); /** * 返回Float类型的配置值 * * @param resID * 资源ID * @return 返回配置值配置值 */ float getFloat(int resID, Float defaultValue); /** * 返回Double类型的配置值 * * @param resID * 资源ID * @return 返回配置值配置值 */ double getDouble(int resID, Double defaultValue); /** * 返回Double类型的配置值 * * @param clazz * 返回资源的类型 * @return 返回带配置值的对象 */ <T extends Object> T getConfig(Class<T> clazz); /** * 删除配置值 * * @param key */ void remove(String key); /** * 删除一组配置值 * * @param key */ void remove(String... key); /** * 清除所有配置 */ void clear(); }