Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * Copyright (c) 2013, Francis Galiegue <fgaliegue@gmail.com>
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the Lesser GNU General Public License as
  * published by the Free Software Foundation, either version 3 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
 * Lesser 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, see <http://www.gnu.org/licenses/>.
 */
package com.github.fge.jsonschema.format.helpers;
Validator for the host-name format attribute.

Important note: the basis for host name format validation is RFC 1034. The RFC does not require that a host name have more than one domain name component. As such, foo is a valid hostname.

Guava's com.google.common.net.InternetDomainName is used for validation.

public final class SharedHostNameAttribute
    extends AbstractFormatAttribute
    public SharedHostNameAttribute(final String fmt)
    {
        super(fmt.);
    }
    @Override
    public void validate(final ProcessingReport reportfinal FullData data)
        throws ProcessingException
    {
        final JsonNode instance = data.getInstance().getNode();
        try {
            InternetDomainName.from(instance.textValue());
        } catch (IllegalArgumentException ignored) {
            report.error(newMsg(data"invalidHostname"));
        }
    }
New to GrepCode? Check out our FAQ X