/* * Copyright (c) 2015 Cisco Systems, Inc. and others. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ package org.opendaylight.yangtools.yang.model.export; import com.google.common.primitives.UnsignedInteger; import java.net.URI; import java.util.Date; import java.util.List; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.model.api.RevisionAwareXPath; import org.opendaylight.yangtools.yang.model.api.SchemaPath; import org.opendaylight.yangtools.yang.model.api.Status; import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition; interface Rfc6020ModuleWriter { void endNode(); void startModuleNode(String identifier); void startOrganizationNode(String input); void startContactNode(String input); void startDescriptionNode(String input); void startUnitsNode(String input); void startYangVersionNode(String input); void startNamespaceNode(URI uri); void startKeyNode(List<QName> keyList); void startPrefixNode(String input); void startFeatureNode(QName qName); void startExtensionNode(QName qName); void startArgumentNode(String input); void startStatusNode(Status status); void startTypeNode(QName qName); void startLeafNode(QName qName); void startContainerNode(QName qName); void startGroupingNode(QName qName); void startRpcNode(QName qName); void startInputNode(); void startOutputNode(); void startLeafListNode(QName qName); void startListNode(QName qName); void startChoiceNode(QName qName); void startCaseNode(QName qName); void startNotificationNode(QName qName); void startIdentityNode(QName qName); void startBaseNode(QName qName); void startTypedefNode(QName qName); void startRevisionNode(Date date); void startDefaultNode(String string); void startMustNode(RevisionAwareXPath xpath); void startErrorMessageNode(String input); void startErrorAppTagNode(String input); void startPatternNode(String regularExpression); void startValueNode(Integer integer); void startEnumNode(String name); void startRequireInstanceNode(boolean require); void startPathNode(RevisionAwareXPath revisionAwareXPath); void startBitNode(String name); void startPositionNode(UnsignedInteger position); void startReferenceNode(String input); void startRevisionDateNode(Date date); void startImportNode(String moduleName); void startUsesNode(QName groupingName); void startAugmentNode(SchemaPath targetPath); void startConfigNode(boolean config); void startLengthNode(String lengthString); void startMaxElementsNode(Integer max); void startMinElementsNode(Integer min); void startPresenceNode(boolean presence); void startOrderedByNode(String ordering); void startRangeNode(String rangeString); void startRefineNode(SchemaPath path); void startMandatoryNode(boolean mandatory); void startAnyxmlNode(QName qName); void startUnknownNode(StatementDefinition def); void startUnknownNode(StatementDefinition def, String nodeParameter); void startFractionDigitsNode(Integer fractionDigits); void startYinElementNode(boolean yinElement); void startWhenNode(RevisionAwareXPath revisionAwareXPath); }