in freemarker-generator-base/src/main/java/org/apache/freemarker/generator/base/datasource/DataSource.java [374:400]
public String getMetadata(String key) {
Validate.notEmpty(key, "No key provided");
switch (key) {
case METADATA_BASE_NAME:
return getBaseName();
case METADATA_CHARSET:
return getCharset().name();
case METADATA_EXTENSION:
return getExtension();
case METADATA_FILE_NAME:
return getFileName();
case METADATA_FILE_PATH:
return getFilePath();
case METADATA_RELATIVE_FILE_PATH:
return getRelativeFilePath();
case METADATA_GROUP:
return getGroup();
case METADATA_NAME:
return getName();
case METADATA_URI:
return uri.toString();
case METADATA_MIME_TYPE:
return getMimeType();
default:
throw new IllegalArgumentException("Unknown metadata key: " + key);
}
}