/* (c) 2014 Open Source Geospatial Foundation - all rights reserved
* (c) 2001 - 2013 OpenPlans
* This code is licensed under the GPL 2.0 license, available at the root
* application directory.
*/
package org.geoserver.catalog;
public enum ProjectionPolicy {
/**
* Force the declared projection, ignoring the native one.
*/
FORCE_DECLARED {
public Integer getCode() {
return 0;
}
},
/**
* Reproject from the native projection to the declared one.
*/
REPROJECT_TO_DECLARED {
public Integer getCode() {
return 1;
}
},
/**
* Do nothing.
*/
NONE {
public Integer getCode() {
return 2;
}
};
public abstract Integer getCode();
/**
* Looks up the projection policy by code, if the lookup fails the default,
* {@link #FORCE_DECLARED}, is returned.
*
* @param code
*
*/
public static ProjectionPolicy get(Integer code) {
if (code == null)
return FORCE_DECLARED;
for (ProjectionPolicy p : ProjectionPolicy.values()) {
if (code.equals(p.getCode())) {
return p;
}
}
return FORCE_DECLARED;
}
}