@SuppressWarnings("unchecked")
public void setConfiguration(final Map<String, ? extends Object> configuration) {
try {
this.source = (URL) configuration.get("source");
} catch (ClassCastException cce) {
throw new SetupException("The configuration value of 'source' can't be cast to java.net.URL.", cce);
}
if (this.source != null) {
Object attributesObj = configuration.get("attributes");
if (attributesObj != null && attributesObj instanceof Map) {