Package net.sf.jz3950

Source Code of net.sf.jz3950.SearchTest

/*
* $Id: SearchTest.java 5 2007-03-09 23:22:30Z gremid $
*
* Copyright (c) 2007 the respective author(s) -- see javadoc.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02110-1301, USA.
*/
package net.sf.jz3950;

import junit.framework.TestCase;

import net.sf.jz3950.Association;
import net.sf.jz3950.RecordResultSet;
import net.sf.jz3950.query.PrefixQuery;
import net.sf.jz3950.record.Record;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;


public class SearchTest extends TestCase
{
    private static final int RESULT_SET_ITERATION_LIMIT = 80;
    protected Association association;
    private Log logger = LogFactory.getLog(getClass());

    public SearchTest(String name)
    {
        super(name);
    }

    @Override
    protected void setUp() throws Exception
    {
        super.setUp();
        this.association = new Association();
    }

    @Override
    protected void tearDown() throws Exception
    {
        this.association = null;
        super.tearDown();
    }

    public void testSearchIndexData() throws Exception
    {
        association.connect("bagel.indexdata.dk", 210);
        iterateOverPartOfResultSet(association.search(new PrefixQuery("marc", "@attrset bib-1 @attr 1=4 \"Indexdata\"")));
        association.disconnect();
    }

    public void testSearchLOC() throws Exception
    {
        association.connect("z3950.loc.gov", 7090);
        iterateOverPartOfResultSet(association.search(new PrefixQuery("Voyager", "@attrset bib-1 @attr 1=4 \"Schiller\"")));
        association.disconnect();
    }

    public void testSearchAllegro() throws Exception
    {
//        association.connect("ubsun02.biblio.etc.tu-bs.de", 2020, "opac", "opac");
//        iterateOverPartOfResultSet(association.search(new PrefixQuery("opac", "@attrset bib-1 @attr 1=4 \"Schiller\"")));
//        association.disconnect();
    }

    private void iterateOverPartOfResultSet(RecordResultSet resultSet)
    {
        logger.debug("Iterating over maximum of " + RESULT_SET_ITERATION_LIMIT + " record(s) from " + resultSet.getTotalResults() + " record(s) in total");

        int recordCount = 0;

        for (Record result : resultSet)
        {
            logger.trace(result);

            if (++recordCount == RESULT_SET_ITERATION_LIMIT)
            {
                break;
            }
        }
    }
}
TOP

Related Classes of net.sf.jz3950.SearchTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.