- private static Map<QName, DataSchemaNode> asMap(final Set<DataSchemaNode> childNodes) {
- final Map<QName, DataSchemaNode> mapped = Maps.newHashMap();
- for (final DataSchemaNode childNode : childNodes) {
- mapped.put(childNode.getQName(), childNode);
- }
- return mapped;
+ public NodeContainerProxy(final QName qName, final Collection<DataSchemaNode> childNodes, final Set<AugmentationSchema> availableAugmentations) {
+ this(qName, asMap(childNodes), availableAugmentations);
+ }
+
+ private static Map<QName, DataSchemaNode> asMap(final Collection<DataSchemaNode> childNodes) {
+ return Maps.uniqueIndex(childNodes, new Function<DataSchemaNode, QName>() {
+ @Override
+ public QName apply(final DataSchemaNode input) {
+ return input.getQName();
+ }
+ });