/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package org.graphdht.hashgraph; import org.neo4j.graphdb.PropertyContainer; import java.io.Serializable; import java.util.Hashtable; import java.util.Map; /** * * @author alex */ public class OptimizedPropertyContainer implements PropertyContainer, Serializable { Map<String, Object> properties; OptimizedPropertyContainer(){ properties = new Hashtable(); } public boolean hasProperty(String key) { return this.properties.containsKey(key); } public Object getProperty(String key) { return this.properties.get(key); } public Object getProperty(String key, Object defaultValue) { return this.properties.containsKey(key)?this.properties.get(key):defaultValue; } public void setProperty(String key, Object value) { this.properties.put(key, value); } public Object removeProperty(String key) { return this.properties.remove(key); } public Iterable<String> getPropertyKeys() { return (Iterable<String>) this.properties.keySet().iterator(); } public Iterable<Object> getPropertyValues() { return (Iterable<Object>) this.properties.values().iterator(); } }