⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 configparameteradapter.java

📁 java 文件下载器。可自定义
💻 JAVA
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space 
// Source File Name:   ConfigParameterAdapter.java

package org.gudy.azureus2.ui.swt.config;

import java.util.List;
import org.gudy.azureus2.core3.config.COConfigurationManager;
import org.gudy.azureus2.core3.config.ParameterListener;
import org.gudy.azureus2.core3.util.Debug;
import org.gudy.azureus2.ui.swt.config.generic.GenericParameterAdapter;

// Referenced classes of package org.gudy.azureus2.ui.swt.config:
//			Parameter, ParameterChangeListener

public class ConfigParameterAdapter extends GenericParameterAdapter
{

	private static final int CHANGINGCOUNT_BREAKER = 5;
	private Parameter owner;
	private int changingCount;
	private boolean changedExternally;

	protected ConfigParameterAdapter(Parameter _owner, final String configID)
	{
		changingCount = 0;
		changedExternally = false;
		owner = _owner;
		COConfigurationManager.addParameterListener(configID, new ParameterListener() {

			final String val$configID;
			final ConfigParameterAdapter this$0;

			public void parameterChanged(String parameterName)
			{
				if (!owner.isInitialised())
					return;
				if (owner.isDisposed())
				{
					COConfigurationManager.removeParameterListener(parameterName, this);
					return;
				}
				try
				{
					informChanged(true);
					Object valueObject = owner.getValueObject();
					if (valueObject instanceof Boolean)
					{
						boolean b = COConfigurationManager.getBooleanParameter(parameterName);
						owner.setValue(new Boolean(b));
					} else
					if (valueObject instanceof Integer)
					{
						int i = COConfigurationManager.getIntParameter(parameterName);
						owner.setValue(new Integer(i));
					} else
					if (valueObject instanceof String)
					{
						String s = COConfigurationManager.getStringParameter(parameterName);
						owner.setValue(s);
					}
				}
				catch (Exception e)
				{
					Debug.out((new StringBuilder()).append("parameterChanged trigger from ConfigParamAdapter ").append(configID).toString(), e);
				}
				return;
			}

			
			{
				this$0 = ConfigParameterAdapter.this;
				configID = s;
				super();
			}
		});
	}

	public int getIntValue(String key)
	{
		return COConfigurationManager.getIntParameter(key);
	}

	public int getIntValue(String key, int def)
	{
		return COConfigurationManager.getIntParameter(key, def);
	}

	public void setIntValue(String key, int value)
	{
		if (changingCount == 0)
			changedExternally = false;
		changingCount++;
		if (getIntValue(key) != value)
			break MISSING_BLOCK_LABEL_47;
		changedExternally = true;
		changingCount--;
		return;
		if (changingCount > 5)
		{
			Debug.out((new StringBuilder()).append("Preventing StackOverflow on setting ").append(key).append(" to ").append(value).append(" (was ").append(getIntValue(key)).append(") via ").append(Debug.getCompressedStackTrace()).toString());
			changingCount = 1;
		} else
		{
			informChanging(value);
			if (!changedExternally)
			{
				COConfigurationManager.setParameter(key, value);
				changedExternally = true;
			}
		}
		changingCount--;
		break MISSING_BLOCK_LABEL_167;
		Exception exception;
		exception;
		changingCount--;
		throw exception;
	}

	public boolean resetIntDefault(String key)
	{
		if (COConfigurationManager.doesParameterDefaultExist(key))
		{
			COConfigurationManager.removeParameter(key);
			return true;
		} else
		{
			return false;
		}
	}

	public boolean getBooleanValue(String key)
	{
		return COConfigurationManager.getBooleanParameter(key);
	}

	public boolean getBooleanValue(String key, boolean def)
	{
		return COConfigurationManager.getBooleanParameter(key, def);
	}

	public void setBooleanValue(String key, boolean value)
	{
		if (changingCount == 0)
			changedExternally = false;
		changingCount++;
		if (getBooleanValue(key) != value)
			break MISSING_BLOCK_LABEL_47;
		changedExternally = true;
		changingCount--;
		return;
		if (changingCount > 5)
		{
			Debug.out((new StringBuilder()).append("Preventing StackOverflow on setting ").append(key).append(" to ").append(value).append(" (was ").append(getBooleanValue(key)).append(") via ").append(Debug.getCompressedStackTrace()).toString());
			changingCount = 1;
		} else
		{
			informChanging(value);
			if (!changedExternally)
			{
				COConfigurationManager.setParameter(key, value);
				changedExternally = true;
			}
		}
		changingCount--;
		break MISSING_BLOCK_LABEL_167;
		Exception exception;
		exception;
		changingCount--;
		throw exception;
	}

	public void informChanged(boolean internally)
	{
		if (owner.change_listeners != null)
		{
			for (int i = 0; i < owner.change_listeners.size(); i++)
				try
				{
					((ParameterChangeListener)owner.change_listeners.get(i)).parameterChanged(owner, internally);
				}
				catch (Exception e)
				{
					Debug.out(e);
				}

		}
	}

	public void informChanging(int toValue)
	{
		if (owner.change_listeners != null)
		{
			for (int i = 0; i < owner.change_listeners.size(); i++)
				try
				{
					ParameterChangeListener l = (ParameterChangeListener)owner.change_listeners.get(i);
					l.intParameterChanging(owner, toValue);
				}
				catch (Exception e)
				{
					Debug.out(e);
				}

		}
	}

	public void informChanging(boolean toValue)
	{
		if (owner.change_listeners != null)
		{
			for (int i = 0; i < owner.change_listeners.size(); i++)
				try
				{
					ParameterChangeListener l = (ParameterChangeListener)owner.change_listeners.get(i);
					l.booleanParameterChanging(owner, toValue);
				}
				catch (Exception e)
				{
					Debug.out(e);
				}

		}
	}

	public void informChanging(String toValue)
	{
		if (owner.change_listeners != null)
		{
			for (int i = 0; i < owner.change_listeners.size(); i++)
				try
				{
					ParameterChangeListener l = (ParameterChangeListener)owner.change_listeners.get(i);
					l.stringParameterChanging(owner, toValue);
				}
				catch (Exception e)
				{
					Debug.out(e);
				}

		}
	}

	public void informChanging(double toValue)
	{
		if (owner.change_listeners != null)
		{
			for (int i = 0; i < owner.change_listeners.size(); i++)
				try
				{
					ParameterChangeListener l = (ParameterChangeListener)owner.change_listeners.get(i);
					l.floatParameterChanging(owner, toValue);
				}
				catch (Exception e)
				{
					Debug.out(e);
				}

		}
	}

}

⌨️ 快捷键说明

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