summaryrefslogtreecommitdiff
path: root/source/com/c2kernel/utils/Resource.java
diff options
context:
space:
mode:
authorAndrew Branson <andrew.branson@cern.ch>2012-05-30 08:37:45 +0200
committerAndrew Branson <andrew.branson@cern.ch>2012-05-30 08:37:45 +0200
commitb086f57f56bf0eb9dab9cf321a0f69aaaae84347 (patch)
tree8e6e26e8b7eed6abad7a17b093bdbb55c5e6b1ba /source/com/c2kernel/utils/Resource.java
parent22088ae8d2d5ff390518dbe1c4372325ffb3a647 (diff)
Initial Maven Conversion
Diffstat (limited to 'source/com/c2kernel/utils/Resource.java')
-rw-r--r--source/com/c2kernel/utils/Resource.java166
1 files changed, 0 insertions, 166 deletions
diff --git a/source/com/c2kernel/utils/Resource.java b/source/com/c2kernel/utils/Resource.java
deleted file mode 100644
index 10228da..0000000
--- a/source/com/c2kernel/utils/Resource.java
+++ /dev/null
@@ -1,166 +0,0 @@
-package com.c2kernel.utils;
-
-//Java
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Hashtable;
-
-import javax.swing.ImageIcon;
-
-import com.c2kernel.common.ObjectNotFoundException;
-
-/**************************************************************************
- *
- * @author $Author: abranson $ $Date: 2005/10/05 07:39:36 $
- * @version $Revision: 1.71 $
- **************************************************************************/
-public class Resource {
- static private Hashtable<String, String> txtCache = new Hashtable<String, String>();
- static private Hashtable<String, ImageIcon> imgCache = new Hashtable<String, ImageIcon>();
- static private URL baseURL = getURLorResURL("com/c2kernel/utils/resources/");
- static private HashMap<String, URL> moduleBaseURLs = new HashMap<String, URL>();
- static public final ImageIcon nullImg = new ImageIcon(new byte[] { 0 });
-
- public static URL getKernelBaseURL() {
- return baseURL;
- }
-
- public static URL getKernelResourceURL(String resName) throws MalformedURLException {
- return new URL(baseURL, resName);
- }
-
- public static void addModuleBaseURL(String ns, URL newBaseURL) {
- moduleBaseURLs.put(ns, newBaseURL);
- Logger.msg("Adding resource URL for "+ns+": "+newBaseURL.toString());
- }
-
- public static void addModuleBaseURL(String ns, String newBaseURL) {
- addModuleBaseURL(ns, getURLorResURL(newBaseURL));
- }
-
- public static URL getModuleBaseURL(String ns) {
- return moduleBaseURLs.get(ns);
- }
-
- public static HashMap<String, URL> getModuleBaseURLs() {
- return moduleBaseURLs;
- }
-
- static public URL getModuleResourceURL(String ns, String resName) throws MalformedURLException {
- return new URL(moduleBaseURLs.get(ns), resName);
- }
-
- private static URL getURLorResURL(String newURL) {
- URL result;
- try {
- result = new URL(newURL);
- } catch (java.net.MalformedURLException ex) {
- //it is assumed that a 'wrong' URL denotes a directory
- //of files resolvable from the CLASSPATH
- result = Resource.class.getClassLoader().getResource(newURL);
- }
- return result;
- }
- /**************************************************************************
- * Gets any text resource files
- **************************************************************************/
-
- static public String findTextResource(String resName) {
- try {
- for (String ns : getModuleBaseURLs().keySet()) {
- try {
- return getTextResource(ns, resName);
- } catch (ObjectNotFoundException ex) { }
- }
- return getTextResource(null, resName);
- } catch (ObjectNotFoundException ex) {
- Logger.warning("Text resource '"+resName+"' not found.");
- return null;
- }
- }
-
- static public String getTextResource(String ns, String resName) throws ObjectNotFoundException
- // throws IOException
- {
- Logger.msg(8, "Resource::getTextResource() - Getting resource: " + resName);
-
- if (txtCache.containsKey(ns+'/'+resName)) {
- return txtCache.get(ns+'/'+resName);
- }
-
- try {
-
- String newRes = null;
- URL loc;
-
- if (ns == null) // kernel
- loc = getKernelResourceURL(resName);
- else
- loc = getModuleResourceURL(ns, resName);
- newRes = FileStringUtility.url2String(loc);
- txtCache.put(ns+'/'+resName, newRes);
- return newRes;
- } catch (Exception e) {
- throw new ObjectNotFoundException(e.getMessage(),null);
- }
- }
- /**
- * Gets an image from the resource directories
- *
- * @param resName - filename after resources/images
- * @return
- */
- static public ImageIcon findImage(String resName) {
- try {
- for (String ns : getModuleBaseURLs().keySet()) {
- try {
- return getImage(ns, resName);
- } catch (ObjectNotFoundException ex) { }
- }
- return getImage(null, resName);
- } catch (ObjectNotFoundException ex) {
- Logger.warning("Image '"+resName+"' not found. Using null icon");
- return nullImg;
- }
- }
-
- static public ImageIcon getImage(String ns, String resName) throws ObjectNotFoundException {
- if (resName == null)
- return nullImg;
-
- if (imgCache.containsKey(ns+'/'+resName)) {
- return imgCache.get(ns+'/'+resName);
- }
-
- URL imgLocation = null;
- if (ns == null)
- try {
- imgLocation = getKernelResourceURL("images/"+resName);
- } catch (MalformedURLException ex) { }
- else
- try {
- imgLocation = getModuleResourceURL(ns, "images/"+resName);
- } catch (MalformedURLException ex) { }
-
- if (imgLocation!= null) {
- ImageIcon newImg = new ImageIcon(imgLocation);
-
- if (newImg.getIconHeight() > -1) {
- imgCache.put(ns+'/'+resName, newImg);
- Logger.msg(0, "Loaded "+resName+" "+newImg.getIconWidth()+"x"+newImg.getIconHeight());
- return newImg;
- }
- }
- throw new ObjectNotFoundException();
- }
-
- static public String getKernelVersion() {
- try {
- return FileStringUtility.url2String(getKernelResourceURL("textFiles/version.txt"));
- } catch (Exception ex) {
- return "No version info found";
- }
-
- }
-}