package com.nortal.jroad.enums; /** * @author Aleksei Bogdanov (aleksei.bogdanov@nortal.com) * @author Lauri Lättemäe (lauri.lattemae@nortal.com) - protocol 4.0 */ public enum XRoadProtocolVersion { V2_0("2.0", "xtee", "http://x-tee.riik.ee/xsd/xtee.xsd"), V3_0("3.0", "xrd", "http://x-rd.net/xsd/xroad.xsd"), V3_1("3.1", "xrd", "http://x-road.ee/xsd/x-road.xsd"), V4_0("4.0", "xrd", "http://x-road.eu/xsd/xroad.xsd"); private final String code; private final String namespacePrefix; private final String namespaceUri; private XRoadProtocolVersion(String code, String namespacePrefix, String namespaceUri) { this.code = code; this.namespaceUri = namespaceUri; this.namespacePrefix = namespacePrefix; } public String getCode() { return code; } public String getNamespacePrefix() { return namespacePrefix; } public String getNamespaceUri() { return namespaceUri; } public static XRoadProtocolVersion getValueByVersionCode(String code) { for (XRoadProtocolVersion version : XRoadProtocolVersion.values()) { if (version.getCode().equals(code)) { return version; } } return null; } public static XRoadProtocolVersion getValueByNamespaceURI(String uri) { for (XRoadProtocolVersion version : XRoadProtocolVersion.values()) { if (version.getNamespaceUri().startsWith(uri)) { return version; } } return null; } }