/**
* Copyright (C) 2009 - present by OpenGamma Inc. and the OpenGamma group of companies
*
* Please see distribution for license.
*/
package com.opengamma.web.bundle;
import org.apache.commons.lang.StringUtils;
/**
* The type of a bundle or fragment, either CSS or Javascript.
*/
public enum BundleType {
/**
* The Javascript type.
*/
JS("js"),
/**
* The CSS type.
*/
CSS("css");
/**
* The file suffix.
*/
private final String _suffix;
/**
* Creates an instance.
*
* @param suffix the file suffix, not null
*/
BundleType(String suffix) {
_suffix = suffix;
}
//-------------------------------------------------------------------------
/**
* Gets the file suffix used by the type of file.
*
* @return the file suffix, not null
*/
public String getSuffix() {
return _suffix;
}
/**
* Lookup the type using the file suffix.
*
* @param fileName the file name including the suffix, null returns null
* @return the bundle type, null if unable to determine
*/
public static BundleType getType(final String fileName) {
if (StringUtils.isNotBlank(fileName)) {
if (fileName.toLowerCase().endsWith("." + JS.getSuffix())) {
return JS;
} else if (fileName.toLowerCase().endsWith("." + CSS.getSuffix())) {
return CSS;
}
}
return null;
}
}