X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=yang%2Fyang-common%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fcommon%2FQName.java;h=0ac89ae8da2c1d634d134bc07977877e5a9c4484;hb=7f35a90e650e9ca3a479a08dba2037908e1117b0;hp=7b949af5a1e029b860d3c71cae53d6922977f0bd;hpb=6c8e31286e3adaf52ed3decce3d78198ef88338a;p=yangtools.git diff --git a/yang/yang-common/src/main/java/org/opendaylight/yangtools/yang/common/QName.java b/yang/yang-common/src/main/java/org/opendaylight/yangtools/yang/common/QName.java index 7b949af5a1..0ac89ae8da 100644 --- a/yang/yang-common/src/main/java/org/opendaylight/yangtools/yang/common/QName.java +++ b/yang/yang-common/src/main/java/org/opendaylight/yangtools/yang/common/QName.java @@ -117,59 +117,6 @@ public final class QName implements Immutable, Serializable, Comparable { return localName; } - /** - * QName Constructor. - * - * @param namespace - * the namespace assigned to the YANG module - * @param revision - * the revision of the YANG module - * @param localName - * YANG schema identifier - * - * @deprecated Use {@link #create(URI, Date, String)} instead. - */ - @Deprecated - public QName(final URI namespace, final Date revision, final String localName) { - this(QNameModule.create(namespace, revision), null, localName); - } - - /** - * Construct new QName which reuses namespace, revision and prefix from - * base. - * - * @param base - * @param localName - * @deprecated Use {@link #create(QName, String)} instead. - */ - @Deprecated - public QName(final QName base, final String localName) { - this(base.getNamespace(), base.getRevision(), base.getPrefix(), localName); - } - - /** - * @deprecated Use {@link #create(String)} instead. This implementation is - * broken. - */ - @Deprecated - public QName(final String input) throws ParseException { - final String nsAndRev = input.substring(input.indexOf("(") + 1, input.indexOf(")")); - final Date revision; - final URI namespace; - if (nsAndRev.contains("?")) { - String[] splitted = nsAndRev.split("\\?"); - namespace = URI.create(splitted[0]); - revision = getRevisionFormat().parse(splitted[1]); - } else { - namespace = URI.create(nsAndRev); - revision = null; - } - - this.localName = checkLocalName(input.substring(input.indexOf(")") + 1)); - this.prefix = null; - this.module = QNameModule.create(namespace, revision); - } - public static QName create(final String input) { Matcher matcher = QNAME_PATTERN_FULL.matcher(input); if (matcher.matches()) { @@ -281,9 +228,20 @@ public final class QName implements Immutable, Serializable, Comparable { } public static QName create(final QName base, final String localName) { - return new QName(base, localName); + return new QName(base.getModule(), base.getPrefix(), localName); } + /** + * Creates new QName. + * + * @param qnameModule + * Namespace and revision enclosed as a QNameModule + * @param prefix + * Namespace prefix + * @param localName + * Local name part of QName. MUST NOT BE null. + * @return Instance of QName + */ public static QName create(final QNameModule module, final String prefix, final String localName) { if (module == null) { throw new NullPointerException("module may not be null"); @@ -292,12 +250,27 @@ public final class QName implements Immutable, Serializable, Comparable { } /** + * Creates new QName. * + * @param qnameModule + * Namespace and revision enclosed as a QNameModule + * @param localName + * Local name part of QName. MUST NOT BE null. + * @return Instance of QName + */ + public static QName create(final QNameModule qnameModule, final String localName) { + return new QName(qnameModule, null, localName); + } + + /** * Creates new QName. * - * @param namespace Namespace of QName or null if namespace is undefined. - * @param revision Revision of namespace or null if revision is unspecified. - * @param localName Local name part of QName. MUST NOT BE null. + * @param namespace + * Namespace of QName or null if namespace is undefined. + * @param revision + * Revision of namespace or null if revision is unspecified. + * @param localName + * Local name part of QName. MUST NOT BE null. * @return Instance of QName */ public static QName create(final URI namespace, final Date revision, final String localName) {