001 /* 002 @license.text@ 003 */ 004 package biz.hammurapi.legacy.persistence; 005 006 /** 007 * @author Pavel Vlasov 008 * @version $Revision: 1.1 $ 009 */ 010 public interface Storage { 011 /** 012 * Stores object to storage and returns key. 013 * @param o 014 * @return key. If key is null then storage could not store the object. 015 */ 016 String put(Object o) throws PersistenceException; 017 018 /** 019 * Retrieves object from storage 020 * @param key 021 * @return 022 */ 023 Object get(String key) throws PersistenceException; 024 025 /** 026 * Removes object from storage 027 * @param key 028 */ 029 void remove(String key) throws PersistenceException; 030 }