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

com.capitalone.dashboard.model.Configuration Maven / Gradle / Ivy

There is a newer version: 4.0.2
Show newest version
package com.capitalone.dashboard.model;

import java.util.Base64;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;

import org.springframework.data.mongodb.core.mapping.Document;

@Document(collection = "configuration")
public class Configuration extends BaseModel {

	private final static String PREFIX = "BASE64:";

	public Configuration(String collectorName, Set> info) {
		super();
		this.collectorName = collectorName;
		this.info = info;
	}

	public Set> decryptOrEncrptInfo() {
		for (Map info : info) {
			if (!info.isEmpty()) {
				String password = info.get("password").toString();
				if(password.contains(PREFIX)){
					Base64.Decoder decoder = Base64.getDecoder();
					password = new String(decoder.decode(password.replaceFirst(PREFIX, "").trim()));
				} else {
					Base64.Encoder encoder = Base64.getEncoder();
					password = PREFIX + encoder.encodeToString(password.getBytes());
				}
				info.replace("password", password);
			}
		}
		return info;
	}

	public Configuration() {
	}

	private String collectorName;
	private Set> info = new HashSet<>();

	public String getCollectorName() {
		return collectorName;
	}

	public void setCollectorName(String collectorName) {
		this.collectorName = collectorName;
	}

	public Set> getInfo() {
		return info;
	}

	public void setInfo(Set> info) {
		this.info = info;
	}


}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy