/** * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.nutch.util.domain; /** * This class represents the last part of the host name, which is operated by * authoritives, not individuals. This information is needed to find the domain * name of a host. The domain name of a host is defined to be the last part * before the domain suffix, w/o subdomain names. As an example the domain name * of <br> * <code> http://lucene.apache.org/ * </code><br> * is <code> apache.org</code> <br> * This class holds three fields, <strong>domain</strong> field represents the * suffix (such as "co.uk") <strong>boost</strong> is a float for boosting score * of url's with this suffix <strong>status</strong> field represents domain's * status * * @author Enis Soztutar <enis.soz.nutch@gmail.com> * @see TopLevelDomain for info please see conf/domain-suffixes.xml */ public class DomainSuffix { /** * Enumeration of the status of the tld. Please see domain-suffixes.xml. */ public enum Status { INFRASTRUCTURE, SPONSORED, UNSPONSORED, STARTUP, PROPOSED, DELETED, PSEUDO_DOMAIN, DEPRECATED, IN_USE, NOT_IN_USE, REJECTED }; private String domain; private Status status; private float boost; public static final float DEFAULT_BOOST = 1.0f; public static final Status DEFAULT_STATUS = Status.IN_USE; public DomainSuffix(String domain, Status status, float boost) { this.domain = domain; this.status = status; this.boost = boost; } public DomainSuffix(String domain) { this(domain, DEFAULT_STATUS, DEFAULT_BOOST); } public String getDomain() { return domain; } public Status getStatus() { return status; } public float getBoost() { return boost; } @Override public String toString() { return domain; } }