📄 property.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 + -