All Downloads are FREE. Search and download functionalities are using the official Maven repository.

eu.europeanaconnect.erds.HTTPResolver Maven / Gradle / Ivy

Go to download

Java classes providing resolving functionality for Persistent Identifiers. Main focus is on National Bibliography Numbers, but some other known systems are also supported. See the official URN:NBN Resolver http://nbn-resolving.org or http://persid.org

The newest version!
/* *********************************************************************
 * Class HTTPResolver
 * 
 * Copyright (c) 2010-2013, German National Library / Deutsche Nationalbibliothek
 * Adickesallee 1, D-60322 Frankfurt am Main, Federal Republic of Germany 
 *
 * This program is free software.
 * For your convenience it is dual licensed.
 * You can redistribute it and/or modify it under the terms of
 * one of the following licenses:
 * 
 * 1.)
 * The GNU General Public License as published by
 * the Free Software Foundation; either version 3 of the License, or
 * (at your option) any later version.
 * You should have received a copy of the GNU General Public License
 * along with this program (gpl-3.0.txt); if not please read
 * http://www.gnu.org/licenses/gpl.html
 * 
 * 2.)
 * The European Union Public Licence as published by
 * The European Commission (executive body of the European Union);
 * either version 1.1 of the License, or (at your option) any later version.
 * You should have received a copy of the European Union Public Licence
 * along with this program (eupl_v1.1_en.pdf); if not please read
 * http://www.osor.eu/eupl
 * 
 * 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 above licenses for more details.
 * 
 * Jürgen Kett, Kadir Karaca Kocer -- German National Library
 * 
 **********************************************************************/

/* ********************************************************************
 * CHANGELOG:
 * 2013-02-27 Class marked @Deprecated to force the usage of
 *            eu.europeanaconnect.erds.HTTPResolverMultiThreaded instead, Karaca
 * 2010-05-05 Refactoring + new package structure by Karaca Kocer
 * 2010-04-25 Code formatting, comments and license text by Karaca Kocer
 * Created on 2010-03-17 by Jürgen Kett
 ********************************************************************/

package eu.europeanaconnect.erds;


/**
 * Simple Resolver that queries a remote server via HTTP.
 * It fetches the URL by reading the header of the
 * redirect-response of the remote resolver
 * (DEPRECATED! Please use the Multi-Threaded-Version)
 * 
 * @author Jürgen Kett (Original code)
 * @author Kadir Karaca Kocer (Refactoring, license text, comments & JavaDoc)
 * @author Nuno Freire (Refactoring)
 * @see eu.europeanaconnect.erds.HTTPResolverMultiThreaded
 */

public abstract class HTTPResolver implements DataProvider {

    /**
     * Fetches the URL out of the header of the redirect response
     * of the remote resolver using the "Location" attribute
     * 
     * @see DataProvider#getResponse(ResolverRequest)
     * @since 17.03.2010
     */
    @Override
    public abstract ResolverResponse getResponse(ResolverRequest resolverRequest) throws ResolverException;
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy