/**
* Create an FopImage objects.
* @param href the url for the image
- * @param baseURL the base url
* @param ua the user agent context
* @return the fop image instance
*/
- protected static FopImage loadImage(String href, String baseURL,
- FOUserAgent ua) {
+ protected static FopImage loadImage(String href, FOUserAgent ua) {
Logger log = ua.getLogger();
- InputStream in = openStream(href, baseURL, ua);
+ InputStream in = openStream(href, ua);
if (in == null) {
return null;
/**
* Create an FopImage objects.
* @param href image URL as a String
- * @param baseURL base URL for relative URLs
* @param ua user agent
* @return a new FopImage object
*/
- protected static InputStream openStream(String href, String baseURL,
- FOUserAgent ua) {
+ protected static InputStream openStream(String href, FOUserAgent ua) {
Logger log = ua.getLogger();
// Get the absolute URL
URL absoluteURL = null;
return null;
} catch (Exception e) {
// maybe relative
- if (baseURL == null) {
+ if (ua.getBaseURL() == null) {
log.error("Error with image URL: " + e.getMessage()
- + " and no base directory is specified", e);
+ + " and no base URL is specified", e);
return null;
}
try {
- absoluteURL = new URL(baseURL + absoluteURL.getFile());
+ absoluteURL = new URL(ua.getBaseURL() + absoluteURL.getFile());
} catch (MalformedURLException e_context) {
// pb context url
log.error("Invalid Image URL - error on relative URL: "
/*
* $Id$
- * Copyright (C) 2001 The Apache Software Foundation. All rights reserved.
+ * Copyright (C) 2001-2003 The Apache Software Foundation. All rights reserved.
* For details on use and redistribution please refer to the
* LICENSE file included with these sources.
*/
* Class to load images.
*/
class ImageLoader {
- String url;
- ImageCache cache;
- boolean valid = true;
- FOUserAgent userAgent;
- FopImage image = null;
+
+ private String url;
+ private ImageCache cache;
+ private boolean valid = true;
+ private FOUserAgent userAgent;
+ private FopImage image = null;
- public ImageLoader(String u, ImageCache c, FOUserAgent ua) {
- url = u;
- cache = c;
- userAgent = ua;
+ /**
+ * Main constructor.
+ * @param url URL to the image
+ * @param cache Image cache
+ * @param ua User agent
+ */
+ public ImageLoader(String url, ImageCache cache, FOUserAgent ua) {
+ this.url = url;
+ this.cache = cache;
+ this.userAgent = ua;
}
+ /**
+ * Loads the image.
+ * @return the loaded image
+ */
public synchronized FopImage loadImage() {
if (!valid || image != null) {
return image;
}
- String base = userAgent.getBaseURL();
- image = ImageFactory.loadImage(url, base, userAgent);
+ image = ImageFactory.loadImage(url, userAgent);
if (image == null) {
cache.invalidateImage(url, userAgent);
valid = false;