typeconversionmanager.java

来自「java 调用windows的api」· Java 代码 · 共 75 行

JAVA
75
字号
package org.jawin.browser.codegen;

import java.util.HashMap;
import org.jawin.browser.config.ConfigManager;

/**
 * Manages loading and exposing type conversion configuration for converting
 * native Win32 types to Java types
 *
 * <p>Title: Jawin Code Generation GUI</p>
 * <p>Description: GUI for exploring type libraries and generating Java code</p>
 * <p>Copyright: Copyright (c) 2003</p>
 * <p>Company: Open Source Incentive</p>
 *
 * @author Josh Passenger
 * @version 1.0
 */

public class TypeConversionManager
{

	private static TypeConversionManager instance = null;

	private HashMap config = new HashMap();

	private TypeConversionManager()
	{
	}

	public static synchronized void initialize()
	{
		instance = new TypeConversionManager();
		instance.loadConfiguration();
	}

	public static TypeConversionManager getInstance()
	{
		if (instance == null)
		{
			throw new IllegalStateException("TypeConversionManager.getInstance() TypeConversionManager was not initialized");
		}

		return instance;
	}

	public void clearConfig()
	{
		config.clear();
	}

	public void addTypeConversionConfig(TypeConversionConfig newConfig)
	{
		config.put(newConfig.getId(), newConfig);
	}

	public TypeConversionConfig getConfig(String id)
	{
		return (TypeConversionConfig) config.get(id);
	}

	public TypeConversionConfig getConfig(int id)
	{
		return getConfig("" + id);
	}

	/**
	 * Loads the configuration from disk
	 */
	private void loadConfiguration()
	{
		String typeConversionConfigFile = ConfigManager.getInstance().getString("typeconversion.config", "config/typeconversion.xml");
		TypeConversionParser parser = new TypeConversionParser();
		parser.parseCodeGenConfig(typeConversionConfigFile);
	}
}

⌨️ 快捷键说明

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