2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.yangtools.yang.data.composite.node.schema.cnsn.parser;
10 import com.google.common.base.Preconditions;
11 import com.google.common.collect.LinkedListMultimap;
12 import java.util.Collections;
14 import org.opendaylight.yangtools.yang.common.QName;
15 import org.opendaylight.yangtools.yang.data.api.Node;
16 import org.opendaylight.yangtools.yang.data.api.schema.DataContainerNode;
17 import org.opendaylight.yangtools.yang.data.composite.node.schema.json.CnSnToNormalizedNodesUtils;
18 import org.opendaylight.yangtools.yang.data.impl.schema.transform.base.parser.ListEntryNodeBaseParser;
19 import org.opendaylight.yangtools.yang.data.impl.schema.transform.base.parser.NodeParserDispatcher;
21 abstract class ListEntryNodeCnSnParser<N extends DataContainerNode<?>> extends ListEntryNodeBaseParser<Node<?>, N> {
23 private final NodeParserDispatcher<Node<?>> dispatcher;
25 ListEntryNodeCnSnParser(final NodeParserDispatcher<Node<?>> dispatcher) {
26 this.dispatcher = Preconditions.checkNotNull(dispatcher);
30 protected LinkedListMultimap<QName, Node<?>> mapChildElements(Iterable<Node<?>> elements) {
31 return CnSnToNormalizedNodesUtils.mapChildElementsForSingletonNode(elements.iterator().next());
35 protected NodeParserDispatcher<Node<?>> getDispatcher() {
40 protected Map<QName, String> getAttributes(Node<?> e) {
41 return Collections.emptyMap();