AppIdMapping.java
package no.nav.data.common.security;
import lombok.Data;
import no.nav.data.common.utils.Constants;
import no.nav.data.common.utils.JsonUtils;
import tools.jackson.core.type.TypeReference;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class AppIdMapping {
public static final TypeReference<List<AuthApps>> AUTH_APP_LIST = new TypeReference<>() {
};
private static final Map<String, String> appIdAppNameMap = new HashMap<>();
public AppIdMapping(String mappings, String teamCatAppId) {
appIdAppNameMap.put(teamCatAppId, Constants.APP_ID);
List<AuthApps> authApps = JsonUtils.readValue(mappings, AUTH_APP_LIST);
authApps.forEach(app -> appIdAppNameMap.put(app.clientId, app.name));
}
public static String getAppNameForAppId(String appId) {
return appId == null ? null : appIdAppNameMap.getOrDefault(appId, "not-found");
}
public Collection<String> getIds() {
return appIdAppNameMap.keySet();
}
@Data
static class AuthApps {
private String name;
private String clientId;
}
}