/*
 * LOGICAL-PARADOX.ORG
 * Copyright (C)2005 satoshi akabane(akabane@logical-paradox.org)
 * $Id: ContentsAccessor.java,v 1.3 2005/10/10 12:34:52 rampil Exp $
 */
package org.logical_paradox.rss.rcm.accessor;

/**
 * ContentsAccessor
 * コンテンツアクセスインターフェース<br>
 * このインターフェースが何に対してアクセスするかは，実装に依存する<br>
 * コンテンツアクセスインターフェースを実装する際は，複数のクライアントで<br>
 * 共有される可能性があることに注意
 * 
 * @author satoshi akabane@logical-paradox.org
 * @version $Revision: 1.3 $
 */
public interface ContentsAccessor {
	/**
	 * 初期化時に呼ばれる．
	 * @param initparam 初期化パラメータ
	 */
	public void init(String initparam);
	/**
	 * コンテンツを実際に登録しているシステムへの接続を開く
	 * @param openstr 接続文字列
	 */
	public void open(String openstr);
	/**
	 * コンテンツを登録する．
	 * @param url URL
	 * @param contents コンテンツ
	 */
	public void regist(String url, String contents);
	/**
	 * コンテンツを削除する．
	 * @param url URL
	 */
	public void unregist(String url);
	/**
	 * 全てのコンテンツを削除する．
	 */
	public void unregistAll();
	/**
	 * コンテンツを探す．
	 * @param url URL
	 * @return 検索されたコンテンツ(文字列)
	 */
	public String find(String url);
	/**
	 * ストレージとの接続を閉じる．
	 */
	public void close();
}

// end of ContentsAccessor.java
