package addressbook;

import org.w3c.dom.Document;

public class UpdateAddressbookBean {

	ConnectXprioriBean xcon = null; // ConnectXprioriBeanクラス

	/**
	 * コンストラクタ ConnectXprioriBeanクラスを呼び出しXprioriとの接続を確立する
	 */
	public UpdateAddressbookBean() {
		// Xprioriとの接続を確立
		xcon = new ConnectXprioriBean();
	}
	
	/**
	 * アイテムを挿入する
	 * @param item
	 * @return
	 */
	public String insertItem(ItemBean item) {
		// Xprioriに登録されている最後のitem要素を指定するXPath
		String insertXPath = "/ND/address_book/item[last()]";

		//最後のitem要素が存在するかチェックする
		String tmpItem_xml = xcon.query(insertXPath);
		Document doc = AddressbookUtils.loadXMLFromString(tmpItem_xml);

		// item要素が存在しないときはaddress_book要素の最初の子要素である
		// dummy要素を挿入対象要素とする
		if(doc.getElementsByTagName("item").item(0) == null){
			insertXPath = "/ND/address_book/dummy[last()]";
		}

		// itemから挿入用XMLを作り、そのXMLを挿入する
		String ret = xcon.insert(insertXPath, item.getItemXML());
		return ret;
	}

	/**
	 * ログアウトする
	 * 
	 */
	public void logout() {
		xcon.logout();
	}	
}

