parameters.java

来自「MyDownloader 是一款使用 http 协议(RFC 1867)用于下载」· Java 代码 · 共 105 行

JAVA
105
字号
/*
 * Copyright 2007 JavaAtWork All rights reserved.
 * Use is subject to license terms.
 */
package com.javaatwork.mydownloader.utils;

import java.applet.Applet;
import java.util.HashMap;

/**
 * Class for retrieving the applet parameters.
 * 
 * @author Johannes Postma
 */
public class Parameters {

	public final static String COOKIE = "cookie";
	public final static String FILES = "files";
	public final static String ICON_DOWNLOAD = "iconDownload";
	public final static String LANGUAGE = "language";
	public final static String SHOW_THUMBNAILS_IN_APPLET = "showThumbNailsInApplet";
	public final static String SHOW_DOWNLOAD_BUTTON = "showDownloadButton";
		
	private static HashMap parameters = null;

	/**
	 * Loads all parameters of an applet.
	 * 
	 * @param applet The applet.
	 */
	public static void loadParameters(Applet applet) {

		parameters = new HashMap();
		loadParameter(applet, Parameters.COOKIE);		
		loadParameter(applet, Parameters.FILES);
		loadParameter(applet, Parameters.ICON_DOWNLOAD);
		loadParameter(applet, Parameters.LANGUAGE);
		loadParameter(applet, Parameters.SHOW_DOWNLOAD_BUTTON);
		loadParameter(applet, Parameters.SHOW_THUMBNAILS_IN_APPLET);
	}

	/**
	 * Load a parameter from an applet tag.
	 * 
	 * @param applet The applet.
	 * @param parameter The name of the parameter.
	 */
	private static void loadParameter(Applet applet, String parameter) {

		try {
			parameters.put(parameter, applet.getParameter(parameter));

			// occurs in case of a stand alone application
		} catch (NullPointerException npe) {
			parameters.put(parameter, null);
		}
	}

	/**
	 * Returns the value of an applet parameter.
	 * 
	 * @param name The name of the variable.
	 * @param defaultValue The default value.
	 * @return The String value
	 */
	public static synchronized String getParameter(Object name, String defaultValue) {
		Object value = parameters.get(name);
		return value == null ? defaultValue : value.toString();
	}

	/**
	 * Returns the value of an applet parameter.
	 * 
	 * @param name The name of the variable.
	 * @param defaultValue The default value.
	 * @return The boolean value
	 */
	public static synchronized boolean getParameter(Object name, boolean defaultValue) {
		String param = Parameters.getParameter(name, Boolean.toString(defaultValue));
		return Boolean.valueOf(param).booleanValue();
	}

	/**
	 * Returns the value of an applet parameter.
	 * 
	 * @param name The name of the variable.
	 * @param defaultValue The default value.
	 * @return The int value
	 */
	public static synchronized int getParameter(Object name, int defaultValue) {
		
		String param = Parameters.getParameter(name, Integer.toString(defaultValue));
		int intParam = 0;
		
		try {
			intParam = Integer.parseInt(param);
		} catch (NumberFormatException nfe) {
			Logger.log("Parameters", "getParameter()",  "incorrect " + name + " format: " + param);
		}
		
		return intParam;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?