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.parser.builder.api;
10 import java.util.List;
13 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
14 import org.opendaylight.yangtools.yang.model.api.UsesNode;
15 import org.opendaylight.yangtools.yang.parser.builder.impl.UnknownSchemaNodeBuilder;
16 import org.opendaylight.yangtools.yang.parser.util.RefineHolder;
19 * Interface for builders of 'uses' statement.
21 public interface UsesNodeBuilder extends GroupingMember, Builder {
23 DataNodeContainerBuilder getParent();
25 String getGroupingName();
27 SchemaPath getGroupingPath();
29 void setGroupingPath(SchemaPath groupingPath);
31 Set<AugmentationSchemaBuilder> getAugmentations();
33 void addAugment(AugmentationSchemaBuilder builder);
35 boolean isAugmenting();
37 void setAugmenting(boolean augmenting);
39 List<RefineHolder> getRefines();
41 List<SchemaNodeBuilder> getRefineNodes();
43 void addRefine(RefineHolder refine);
45 void addRefineNode(DataSchemaNodeBuilder refineNode);
49 Set<DataSchemaNodeBuilder> getFinalChildren();
51 Set<DataSchemaNodeBuilder> getTargetChildren();
53 void setTargetChildren(Set<DataSchemaNodeBuilder> targetChildren);
55 Set<GroupingBuilder> getFinalGroupings();
57 Set<GroupingBuilder> getTargetGroupings();
59 void setTargetGroupings(Set<GroupingBuilder> targetGroupings);
61 Set<TypeDefinitionBuilder> getFinalTypedefs();
63 Set<TypeDefinitionBuilder> getTargetTypedefs();
65 void setTargetTypedefs(Set<TypeDefinitionBuilder> targetTypedefs);
67 List<UnknownSchemaNodeBuilder> getFinalUnknownNodes();
69 List<UnknownSchemaNodeBuilder> getTargetUnknownNodes();
71 void setTargetUnknownNodes(List<UnknownSchemaNodeBuilder> targetUnknownNodes);
73 List<UsesNodeBuilder> getTargetGroupingUses();
77 void setLoadDone(boolean loadDone);