Example usage for org.apache.commons.io.serialization ValidatingObjectInputStream close

List of usage examples for org.apache.commons.io.serialization ValidatingObjectInputStream close

Introduction

In this page you can find the example usage for org.apache.commons.io.serialization ValidatingObjectInputStream close.

Prototype

public void close() throws IOException 

Source Link

Document

Closes the input stream.

Usage

From source file:fr.paris.lutece.portal.business.mail.MailItemQueueDAO.java

/**
 * return the first mail item in the table
 * /*w w  w.  jav a2 s  .  c om*/
 * @param nIdMailItemQueue
 *            the id of the mail item
 * @return the first mail item in the table
 */
@Override
public MailItemQueue load(int nIdMailItemQueue) {
    MailItemQueue mailItemQueue = null;
    MailItem mailItem = null;
    InputStream inputStream;
    DAOUtil daoUtil = new DAOUtil(SQL_QUERY_LOAD_MAIL_ITEM);
    daoUtil.setInt(1, nIdMailItemQueue);
    daoUtil.executeQuery();

    if (daoUtil.next()) {
        mailItemQueue = new MailItemQueue();
        mailItemQueue.setIdMailItemQueue(daoUtil.getInt(1));
        inputStream = daoUtil.getBinaryStream(2);

        try {
            ValidatingObjectInputStream objectInputStream = new ValidatingObjectInputStream(inputStream);
            objectInputStream.accept(MailItem.class, ArrayList.class, byte[].class, FileAttachment.class,
                    UrlAttachment.class, FileAttachment[].class, UrlAttachment[].class, URL.class);
            mailItem = (MailItem) objectInputStream.readObject();
            objectInputStream.close();
        } catch (IOException e) {
            AppLogService.error(e.getMessage(), e);
        } catch (ClassNotFoundException e) {
            AppLogService.error(e.getMessage(), e);
        } finally {
            try {
                inputStream.close();
            } catch (IOException e) {
                AppLogService.error(e.getMessage(), e);
            }
        }

        mailItemQueue.setMailItem(mailItem);
    }

    daoUtil.free();

    return mailItemQueue;
}