Do not leak Optional in QNameWithPredicateImpl.toString()
[yangtools.git] / yang / yang-data-impl / src / main / java / org / opendaylight / yangtools / yang / data / impl / leafref / QNameWithPredicateImpl.java
index fa88e74ca7e1a62124b3a5ad8bc5441e52b940f1..d0fb0193d1400a6ec92e29e8e3fb202ca4c93a8c 100644 (file)
@@ -11,9 +11,11 @@ import com.google.common.collect.ImmutableList;
 import java.io.Serializable;
 import java.util.List;
 import java.util.Objects;
+import java.util.Optional;
 import org.opendaylight.yangtools.concepts.Immutable;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
+import org.opendaylight.yangtools.yang.common.Revision;
 
 final class QNameWithPredicateImpl implements Immutable, Serializable, QNameWithPredicate {
 
@@ -76,7 +78,10 @@ final class QNameWithPredicateImpl implements Immutable, Serializable, QNameWith
 
         if (moduleQname != null) {
             sb.append('(').append(moduleQname.getNamespace());
-            sb.append("?revision=").append(moduleQname.getRevision());
+            final Optional<Revision> rev = moduleQname.getRevision();
+            if (rev.isPresent()) {
+                sb.append("?revision=").append(rev.get());
+            }
             sb.append(')');
         }