// Path: xxl-conf-admin/src/main/java/com/xxl/conf/admin/core/model/XxlConfNode.java
// public class XxlConfNode {
// 
// 	private String env;
// 	private String key;			// 配置Key
// 	private String appname; 	// 所属项目AppName
// 	private String title; 		// 配置描述
// 	private String value;		// 配置Value
// 
// 	// plugin
// 	/*private String zkValue; 				// ZK中配置Value	// TODO, delete*/
// 	private List<XxlConfNodeLog> logList;	// 配置变更Log
// 
// 	public String getEnv() {
// 		return env;
// 	}
// 
// 	public void setEnv(String env) {
// 		this.env = env;
// 	}
// 
// 	public String getKey() {
// 		return key;
// 	}
// 
// 	public void setKey(String key) {
// 		this.key = key;
// 	}
// 
// 	public String getAppname() {
// 		return appname;
// 	}
// 
// 	public void setAppname(String appname) {
// 		this.appname = appname;
// 	}
// 
// 	public String getTitle() {
// 		return title;
// 	}
// 
// 	public void setTitle(String title) {
// 		this.title = title;
// 	}
// 
// 	public String getValue() {
// 		return value;
// 	}
// 
// 	public void setValue(String value) {
// 		this.value = value;
// 	}
// 
// 	/*public String getZkValue() {
// 		return zkValue;
// 	}
// 
// 	public void setZkValue(String zkValue) {
// 		this.zkValue = zkValue;
// 	}*/
// 
// 	public List<XxlConfNodeLog> getLogList() {
// 		return logList;
// 	}
// 
// 	public void setLogList(List<XxlConfNodeLog> logList) {
// 		this.logList = logList;
// 	}
// }
// 
// Path: xxl-conf-admin/src/main/java/com/xxl/conf/admin/core/model/XxlConfUser.java
// public class XxlConfUser {
// 
//     private String username;
//     private String password;
//     private int permission;             // 权限：0-普通用户、1-管理员
//     private String permissionData;      // 权限配置数据, 格式 "appname#env,appname#env02"
// 
//     public String getUsername() {
//         return username;
//     }
// 
//     public void setUsername(String username) {
//         this.username = username;
//     }
// 
//     public String getPassword() {
//         return password;
//     }
// 
//     public void setPassword(String password) {
//         this.password = password;
//     }
// 
//     public int getPermission() {
//         return permission;
//     }
// 
//     public void setPermission(int permission) {
//         this.permission = permission;
//     }
// 
//     public String getPermissionData() {
//         return permissionData;
//     }
// 
//     public void setPermissionData(String permissionData) {
//         this.permissionData = permissionData;
//     }
// 
// }
// 
// Path: xxl-conf-admin/src/main/java/com/xxl/conf/admin/core/util/ReturnT.java
// public class ReturnT<T> {
// 
// 	public static final int SUCCESS_CODE = 200;
// 	public static final int FAIL_CODE = 500;
// 
// 	public static final ReturnT<String> SUCCESS = new ReturnT<String>(null);
// 	public static final ReturnT<String> FAIL = new ReturnT<String>(FAIL_CODE, null);
// 
// 	private int code;
// 	private String msg;
// 	private T data;
// 
// 	public ReturnT(int code, String msg) {
// 		this.code = code;
// 		this.msg = msg;
// 	}
// 	public ReturnT(T data) {
// 		this.code = SUCCESS_CODE;
// 		this.data = data;
// 	}
// 
// 
// 	public int getCode() {
// 		return code;
// 	}
// 
// 	public void setCode(int code) {
// 		this.code = code;
// 	}
// 
// 	public String getMsg() {
// 		return msg;
// 	}
// 
// 	public void setMsg(String msg) {
// 		this.msg = msg;
// 	}
// 
// 	public T getData() {
// 		return data;
// 	}
// 
// 	public void setData(T data) {
// 		this.data = data;
// 	}
// 
// }


import com.xxl.conf.admin.core.model.XxlConfNode;
import com.xxl.conf.admin.core.model.XxlConfUser;
import com.xxl.conf.admin.core.util.ReturnT;
import org.springframework.web.context.request.async.DeferredResult;
import java.util.List;
import java.util.Map;
package com.xxl.conf.admin.service;




/**
 * @author xuxueli 2015-9-4 18:19:52
 */
public interface IXxlConfNodeService {

	public boolean ifHasProjectPermission(XxlConfUser loginUser, String loginEnv, String appname);

	public Map<String,Object> pageList(int offset,
									   int pagesize,
									   String appname,
									   String key,
									   XxlConfUser loginUser,
									   String loginEnv);

	public ReturnT<String> delete(String key, XxlConfUser loginUser, String loginEnv);

	public ReturnT<String> add(XxlConfNode xxlConfNode, XxlConfUser loginUser, String loginEnv);

// Path: xxl-conf-admin/src/main/java/com/xxl/conf/admin/core/model/XxlConfNode.java
// public class XxlConfNode {
// 
// 	private String env;
// 	private String key;			// 配置Key
// 	private String appname; 	// 所属项目AppName
// 	private String title; 		// 配置描述
// 	private String value;		// 配置Value
// 
// 	// plugin
// 	/*private String zkValue; 				// ZK中配置Value	// TODO, delete*/
// 	private List<XxlConfNodeLog> logList;	// 配置变更Log
// 
// 	public String getEnv() {
// 		return env;
// 	}
// 
// 	public void setEnv(String env) {
// 		this.env = env;
// 	}
// 
// 	public String getKey() {
// 		return key;
// 	}
// 
// 	public void setKey(String key) {
// 		this.key = key;
// 	}
// 
// 	public String getAppname() {
// 		return appname;
// 	}
// 
// 	public void setAppname(String appname) {
// 		this.appname = appname;
// 	}
// 
// 	public String getTitle() {
// 		return title;
// 	}
// 
// 	public void setTitle(String title) {
// 		this.title = title;
// 	}
// 
// 	public String getValue() {
// 		return value;
// 	}
// 
// 	public void setValue(String value) {
// 		this.value = value;
// 	}
// 
// 	/*public String getZkValue() {
// 		return zkValue;
// 	}
// 
// 	public void setZkValue(String zkValue) {
// 		this.zkValue = zkValue;
// 	}*/
// 
// 	public List<XxlConfNodeLog> getLogList() {
// 		return logList;
// 	}
// 
// 	public void setLogList(List<XxlConfNodeLog> logList) {
// 		this.logList = logList;
// 	}
// }
// 
// Path: xxl-conf-admin/src/main/java/com/xxl/conf/admin/core/model/XxlConfUser.java
// public class XxlConfUser {
// 
//     private String username;
//     private String password;
//     private int permission;             // 权限：0-普通用户、1-管理员
//     private String permissionData;      // 权限配置数据, 格式 "appname#env,appname#env02"
// 
//     public String getUsername() {
//         return username;
//     }
// 
//     public void setUsername(String username) {
//         this.username = username;
//     }
// 
//     public String getPassword() {
//         return password;
//     }
// 
//     public void setPassword(String password) {
//         this.password = password;
//     }
// 
//     public int getPermission() {
//         return permission;
//     }
// 
//     public void setPermission(int permission) {
//         this.permission = permission;
//     }
// 
//     public String getPermissionData() {
//         return permissionData;
//     }
// 
//     public void setPermissionData(String permissionData) {
//         this.permissionData = permissionData;
//     }
// 
// }
// 
// Path: xxl-conf-admin/src/main/java/com/xxl/conf/admin/core/util/ReturnT.java
// public class ReturnT<T> {
// 
// 	public static final int SUCCESS_CODE = 200;
// 	public static final int FAIL_CODE = 500;
// 
// 	public static final ReturnT<String> SUCCESS = new ReturnT<String>(null);
// 	public static final ReturnT<String> FAIL = new ReturnT<String>(FAIL_CODE, null);
// 
// 	private int code;
// 	private String msg;
// 	private T data;
// 
// 	public ReturnT(int code, String msg) {
// 		this.code = code;
// 		this.msg = msg;
// 	}
// 	public ReturnT(T data) {
// 		this.code = SUCCESS_CODE;
// 		this.data = data;
// 	}
// 
// 
// 	public int getCode() {
// 		return code;
// 	}
// 
// 	public void setCode(int code) {
// 		this.code = code;
// 	}
// 
// 	public String getMsg() {
// 		return msg;
// 	}
// 
// 	public void setMsg(String msg) {
// 		this.msg = msg;
// 	}
// 
// 	public T getData() {
// 		return data;
// 	}
// 
// 	public void setData(T data) {
// 		this.data = data;
// 	}
// 
// }


// Path: xxl-conf-admin/src/main/java/com/xxl/conf/admin/service/IXxlConfNodeService.java
import com.xxl.conf.admin.core.model.XxlConfNode;
import com.xxl.conf.admin.core.model.XxlConfUser;
import com.xxl.conf.admin.core.util.ReturnT;
import org.springframework.web.context.request.async.DeferredResult;
import java.util.List;
import java.util.Map;

package com.xxl.conf.admin.service;




/**
 * @author xuxueli 2015-9-4 18:19:52
 */
public interface IXxlConfNodeService {

	public boolean ifHasProjectPermission(XxlConfUser loginUser, String loginEnv, String appname);

	public Map<String,Object> pageList(int offset,
									   int pagesize,
									   String appname,
									   String key,
									   XxlConfUser loginUser,
									   String loginEnv);

	public ReturnT<String> delete(String key, XxlConfUser loginUser, String loginEnv);

	public ReturnT<String> add(XxlConfNode xxlConfNode, XxlConfUser loginUser, String loginEnv);

	public ReturnT<String> update(XxlConfNode xxlConfNode, XxlConfUser loginUser, String loginEnv);