All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.cloudecho.config.AppConfigBean Maven / Gradle / Ivy

The newest version!
package com.github.cloudecho.config;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.xmlbean.annotation.ElementTag;
import org.xmlbean.util.PubUtils;

public class AppConfigBean {
	@ElementTag(name = "param")
	List params;

	public List getParams() {
		return params;
	}

	public void setParams(List params) {
		this.params = params;
	}

	public Map asMap() {
		Map map = new HashMap();
		for (Param p : this.getParams()) {
			p.setParamVal(stripEnv(p.getParamVal()).trim());
			map.put(p.getParamAttr().getKey(), p);
		}
		return map;
	}

	private String stripEnv(String val) {
		if (PubUtils.isEmpty(val)) {
			return "";
		}
		return AppUtils.stripEnv(val);
	}

	public static class Param {
		String paramVal;
		ParamAttr paramAttr;

		public String getParamVal() {
			return paramVal;
		}

		public void setParamVal(String paramVal) {
			this.paramVal = paramVal;
		}

		public ParamAttr getParamAttr() {
			return paramAttr;
		}

		public void setParamAttr(ParamAttr paramAttr) {
			this.paramAttr = paramAttr;
		}
	}

	public static class ParamAttr {
		String key;
		String name;
		String type;
		String description;

		public String getKey() {
			return key;
		}

		public void setKey(String key) {
			this.key = key;
		}

		public String getName() {
			return name;
		}

		public void setName(String name) {
			this.name = name;
		}

		public String getType() {
			return type;
		}

		public void setType(String type) {
			this.type = type;
		}

		public String getDescription() {
			return description;
		}

		public void setDescription(String description) {
			this.description = description;
		}
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy