}
public static Projection getProjectionByCode(String code) {
Projection proj = projectionsByCode_cache.get(code);
if (proj != null) return proj;
ProjectionChoice pc = allProjectionChoicesByCode.get(code);
if (pc != null) {
Collection<String> pref = pc.getPreferencesFromCode(code);
pc.setPreferences(pref);
try {
proj = pc.getProjection();
} catch (Exception e) {
String cause = e.getMessage();
Main.warn("Unable to get projection "+code+" with "+pc + (cause != null ? ". "+cause : ""));
}
}