Show ResourceLoader.java syntax highlighted
/*
* This file is distributed under the GPL v2 as part of teastats site statistics package
* http://teastats.sourceforge.net
*/
package net.time4tea.webstats.util;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.URL;
/**
* Originally richja Dec 9, 2005
*/
public class ResourceLoader {
private Class resourceClass;
public ResourceLoader(Object object) {
this(object.getClass());
}
public ResourceLoader(Class clazz) {
this.resourceClass = clazz;
}
public String loadString(String resourceName) throws IOException {
Reader reader = openReader(resourceName);
StringBuffer buffer = new StringBuffer();
int ch;
while ((ch = reader.read()) != -1) {
buffer.append((char) ch);
}
return buffer.toString();
}
public Reader openReader(String resourceName) throws IOException {
return new InputStreamReader(openStream(resourceName));
}
public InputStream openStream(String resourceName) throws IOException {
return urlOf(resourceName).openStream();
}
public URL urlOf(String resourceName) throws IOException {
URL url = resourceClass.getResource(resourceName);
if (url == null) {
url = resourceClass.getResource("/" + resourceName);
}
if (url == null) {
throw new IOException("resource " + resourceName + " not found");
}
return url;
}
}
See more files for this project here