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

📄 property.java

📁 发布/订阅系统路由重配算法,可应用于ad hoc环境
💻 JAVA
字号:
/* * project: RebecaSim * package: graph * file:    Property.java *  * version: 0.1 * date:    02.04.2005 *  * This software is part of the diploma thesis "Ein adaptives Brokernetz  * für Publish/Subscribe Systeme". */package graph;import util.*;/** * TODO Insert class description here. * * @version 02.04.2005 * @author  parzy */public class Property {	private static long tmpId = 0;		private final String key;		private final boolean isTemporary;		private SimpleHashtable elements;		private boolean manageElements;		private synchronized static long getTmpId() {		return tmpId++;	}		public Property() {		this.key = "tmp." + Property.getTmpId();		this.isTemporary = true;		this.elements = new SimpleHashtable();		this.manageElements = true;	}		public Property(String name) {		this.key = "prop." + name;		this.isTemporary = false;		this.elements = null;		this.manageElements = false;	}		public boolean equals(Object o) {		return (o instanceof Property) && this.key.equals(((Property)o).key);	}	public int hashCode() {		return key.hashCode();	}		public String toString() {		return key;	}		String getKey() {		return key;	}		synchronized void addElement(Element e) {				if (manageElements) {			if (e == null) {				throw new NullPointerException("Null is not a valid element.");			}			//System.out.println("Put element "+e);			elements.put(e,e);		}	}		synchronized void removeElement(Element e) {		if (manageElements) {			if (e == null) {				throw new NullPointerException("Null is not a valid element.");			}			elements.remove(e);		}	}		public synchronized void clear() {		if (isTemporary) {			manageElements = false;			elements.keyIterator.reset();			while (elements.keyIterator.hasNext()) {				((Element)elements.keyIterator.next()).removeProperty(this);			}			elements.clear();			manageElements = true;		}	}		protected void finalize() throws Throwable {		if (isTemporary) {			manageElements = false;			elements.keyIterator.reset();			while (elements.keyIterator.hasNext()) {				((Element)elements.keyIterator.next()).removeProperty(this);			}		}		elements = null;		super.finalize();	}		public synchronized ResetableIterator getElements(){		return elements == null ? null : elements.keyIterator();	}		public int size() {		return elements.size();	}}

⌨️ 快捷键说明

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