![JAR search and dependency download from the Maven repository](/logo.png)
org.opendaylight.lispflowmapping.lisp.util.LispSimpleAddressStringifier Maven / Gradle / Ivy
/*
* Copyright (c) 2015 Cisco Systems, Inc. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
package org.opendaylight.lispflowmapping.lisp.util;
import static java.util.Objects.requireNonNull;
import org.opendaylight.lispflowmapping.lisp.util.LispAddressStringifier.Destination;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.SimpleAddress;
/**
* Utility class with static methods returning string representations of
* supported LISP simple address types.
*
* @author Lorand Jakab
*
*/
public final class LispSimpleAddressStringifier {
// Utility class, should not be instantiated
private LispSimpleAddressStringifier() {
}
public static String getString(SimpleAddress addr) {
return getString(Destination.USER, addr);
}
public static String getString(Destination dst, SimpleAddress addr) {
requireNonNull(addr, "address should not be null");
if (addr.getIpAddress() != null) {
if (addr.getIpAddress().getIpv4Address() != null) {
return addr.getIpAddress().getIpv4Address().getValue();
} else if (addr.getIpAddress().getIpv6Address() != null) {
return addr.getIpAddress().getIpv6Address().getValue();
}
} else if (addr.getIpPrefix() != null) {
if (addr.getIpPrefix().getIpv4Prefix() != null) {
return addr.getIpPrefix().getIpv4Prefix().getValue();
} else if (addr.getIpPrefix().getIpv6Prefix() != null) {
return addr.getIpPrefix().getIpv6Prefix().getValue();
}
} else if (addr.getMacAddress() != null) {
return addr.getMacAddress().getValue();
} else if (addr.getDistinguishedNameType() != null) {
return addr.getDistinguishedNameType().getValue();
} else if (addr.getAsNumber() != null) {
return "AS" + addr.getAsNumber().getValue();
}
return null;
}
protected static String getURLPrefix(SimpleAddress addr) {
requireNonNull(addr, "address should not be null");
if (addr.getIpAddress() != null) {
if (addr.getIpAddress().getIpv4Address() != null) {
return "ipv4";
} else if (addr.getIpAddress().getIpv6Address() != null) {
return "ipv6";
}
} else if (addr.getIpPrefix() != null) {
if (addr.getIpPrefix().getIpv4Prefix() != null) {
return "ipv4";
} else if (addr.getIpPrefix().getIpv6Prefix() != null) {
return "ipv6";
}
} else if (addr.getMacAddress() != null) {
return "mac";
} else if (addr.getDistinguishedNameType() != null) {
return "dn";
} else if (addr.getAsNumber() != null) {
return "as";
}
return null;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy