bookshopsearchtask.java

来自「主要是对串口驱动的的一些控制源码!!! 在下载javacomm20-win32」· Java 代码 · 共 110 行

JAVA
110
字号
package de.fhm.jkf.bookshop.cl;
/*
 * <br><br><center><table border="1" width="80%"><hr>
 * <strong>
 * <a href="http://jkf.sourceforge.net">The JKF Project</a>
 * </strong>
 * <p>
 * Copyright (C) 2002 by Theodor Willax
 * <p>
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 * <p>
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 * <p>
 * You should have received a copy of the <a href="http://www.gnu.org/copyleft/lesser.html">
 * GNU Lesser General Public License</a> along with this library; if not, write to
 * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
 * MA  02111-1307  USA
 * <hr></table></center>
 */

import de.fhm.jkf.bookshop.clsv.Book;
import de.fhm.jkf.bookshop.clsv.BookTO;
import de.fhm.jkf.comm.cl.JKFFactory;
import de.fhm.jkf.comm.cl.ObjectFactory;
import de.fhm.jkf.gui.CommunicationException;
import de.fhm.jkf.gui.CommunicationTask;
import de.fhm.jkf.gui.JKFErrorFrame;
import de.fhm.jkf.gui.JKFView;
import de.fhm.jkf.resource.cl.JKFClientLogger;

/**
 * Task used for searching books.
 * 
 * @author Theodor Willax
 * @version $Revision: 1.5 $
 */
public class BookshopSearchTask extends CommunicationTask {
	/**
	 * jndi name for a book entity.
	 */
	private final static String jndiName = "bookshop/Book";

	/**
	 * Saves the result of the search for presenting in
	 * the GUI thread.
	 */
	private BookTO bookTO = null;

	/**
	 * Constructor for BookshopSearchTask.
	 * @param panel
	 */
	public BookshopSearchTask(JKFView panel) {
		super(panel);
	}

	/**
	 * Responsible for updating the gui.
	 * 
	 * @see de.fhm.jkf.gui.CommunicationTask#doPresentation()
	 */
	public void doPresentation() {
		if (super.getError() != null) {
			Exception e = super.getError();
			JKFClientLogger.error(e.getMessage(), e);
			new JKFErrorFrame(e).show();
			return;
		}
		// display the searched information in the view
		try {
			super.getPanel().setTransferObject(this.bookTO);
		} catch (Exception e) {
			JKFClientLogger.error(e.getMessage(), e);
			new JKFErrorFrame(e).show();
		}
	}

	/**
	 * Searches a book for a given isbn.
	 * 
	 * @see de.fhm.jkf.gui.CommunicationTask#doQuery()
	 */
	public void doQuery() {
		ObjectFactory factory = JKFFactory.instance().getFactory();

		// prepare parameters for ejbFindByPrimaryKey()
		Object[] param = new Object[1];
		param[0] = ((BookshopSearchView) super.getPanel()).isbnSearch.getText();
		try {
			Book book =
				(Book) factory.findByPrimaryKey(Book.class, param, jndiName);
			this.bookTO = book.getBookTO();
		} catch (Exception e) {
			throw new CommunicationException(e);
		}
	}

	/**
	 * @see de.fhm.jkf.thread.cl.InterruptableTask#interrupt()
	 */
	public void interrupt() {
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?