Merge "BUG-190 Simplify reconnect logic in protocol-framework."
[controller.git] / opendaylight / md-sal / sal-protocolbuffer-encoding / src / main / java / org / opendaylight / controller / cluster / datastore / node / utils / QNameFactory.java
1 package org.opendaylight.controller.cluster.datastore.node.utils;
2
3 import org.opendaylight.yangtools.yang.common.QName;
4
5 import java.util.HashMap;
6 import java.util.Map;
7
8 public class QNameFactory {
9     private static final Map<String, QName> cache = new HashMap<>();
10
11     public static QName create(String name){
12         QName value = cache.get(name);
13         if(value == null){
14             synchronized (cache){
15                 value = cache.get(name);
16                 if(value == null) {
17                     value = QName.create(name);
18                     cache.put(name, value);
19                 }
20             }
21         }
22         return value;
23     }
24 }