import org.opendaylight.mdsal.binding2.model.api.Type;
import org.opendaylight.mdsal.binding2.model.api.type.builder.GeneratedTypeBuilder;
import org.opendaylight.mdsal.binding2.model.api.type.builder.GeneratedTypeBuilderBase;
+import org.opendaylight.mdsal.binding2.spec.base.TreeNode;
+import org.opendaylight.mdsal.binding2.spec.structural.Augmentable;
import org.opendaylight.mdsal.binding2.txt.yangTemplateForModule;
import org.opendaylight.mdsal.binding2.txt.yangTemplateForNode;
import org.opendaylight.mdsal.binding2.util.BindingMapping;
* <code>schemaNode</code>.
*
* The new builder always implements
- * {@link org.opendaylight.mdsal.binding2.spec.TreeNode TreeNode}.<br>
+ * {@link TreeNode TreeNode}.<br>
* If <code>schemaNode</code> is instance of GroupingDefinition it also
- * implements {@link org.opendaylight.mdsal.binding2.spec.Augmentable
+ * implements {@link Augmentable
* Augmentable}.<br>
* If <code>schemaNode</code> is instance of
* {@link org.opendaylight.yangtools.yang.model.api.DataNodeContainer
import org.opendaylight.mdsal.binding2.model.api.ConcreteType;
import org.opendaylight.mdsal.binding2.model.api.ParameterizedType;
import org.opendaylight.mdsal.binding2.model.api.Type;
-import org.opendaylight.mdsal.binding2.spec.Augmentable;
-import org.opendaylight.mdsal.binding2.spec.Augmentation;
-import org.opendaylight.mdsal.binding2.spec.IdentifiableItem;
-import org.opendaylight.mdsal.binding2.spec.InstanceIdentifier;
-import org.opendaylight.mdsal.binding2.spec.Notification;
-import org.opendaylight.mdsal.binding2.spec.TreeChildNode;
-import org.opendaylight.mdsal.binding2.spec.TreeNode;
-import org.opendaylight.mdsal.binding2.spec.TreeRoot;
+import org.opendaylight.mdsal.binding2.spec.structural.Augmentable;
+import org.opendaylight.mdsal.binding2.spec.structural.Augmentation;
+import org.opendaylight.mdsal.binding2.spec.base.IdentifiableItem;
+import org.opendaylight.mdsal.binding2.spec.base.InstanceIdentifier;
+import org.opendaylight.mdsal.binding2.spec.base.Notification;
+import org.opendaylight.mdsal.binding2.spec.structural.TreeChildNode;
+import org.opendaylight.mdsal.binding2.spec.base.TreeNode;
+import org.opendaylight.mdsal.binding2.spec.base.TreeRoot;
import org.opendaylight.yangtools.concepts.Identifier;
public final class BindingTypes {
import org.opendaylight.mdsal.binding2.model.api.Restrictions;
import org.opendaylight.mdsal.binding2.model.api.Type;
import org.opendaylight.mdsal.binding2.model.api.WildcardType;
-import org.opendaylight.mdsal.binding2.spec.Augmentable;
-import org.opendaylight.mdsal.binding2.spec.Augmentation;
-import org.opendaylight.mdsal.binding2.spec.RpcCallback;
+import org.opendaylight.mdsal.binding2.spec.structural.Augmentable;
+import org.opendaylight.mdsal.binding2.spec.structural.Augmentation;
+import org.opendaylight.mdsal.binding2.spec.base.RpcCallback;
import org.opendaylight.yangtools.yang.model.api.type.LengthConstraint;
import org.opendaylight.yangtools.yang.model.api.type.PatternConstraint;
import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
* Creates instance of
* {@link org.opendaylight.mdsal.binding2.model.api.ParameterizedType
* ParameterizedType} where raw type is
- * {@link org.opendaylight.mdsal.binding2.spec.Augmentable} and actual
+ * {@link Augmentable} and actual
* parameter is <code>valueType</code>.
*
* @param valueType
* Creates instance of
* {@link org.opendaylight.mdsal.binding2.model.api.ParameterizedType
* ParameterizedType} where raw type is
- * {@link org.opendaylight.mdsal.binding2.spec.Augmentation} and actual
+ * {@link Augmentation} and actual
* parameter is <code>valueType</code>.
*
* @param valueType
import org.opendaylight.mdsal.binding2.model.api.GeneratedType;
import org.opendaylight.mdsal.binding2.model.api.Type;
import org.opendaylight.mdsal.binding2.model.api.UnitName;
-import org.opendaylight.mdsal.binding2.spec.Augmentable;
-import org.opendaylight.mdsal.binding2.spec.Augmentation;
+import org.opendaylight.mdsal.binding2.spec.structural.Augmentable;
+import org.opendaylight.mdsal.binding2.spec.structural.Augmentation;
import org.opendaylight.yangtools.concepts.Identifier;
/**
import org.opendaylight.mdsal.binding2.model.api.MethodSignature;
import org.opendaylight.mdsal.binding2.model.api.ParameterizedType;
import org.opendaylight.mdsal.binding2.model.api.Type;
-import org.opendaylight.mdsal.binding2.spec.Augmentable;
-import org.opendaylight.mdsal.binding2.spec.TreeNode;
+import org.opendaylight.mdsal.binding2.spec.structural.Augmentable;
+import org.opendaylight.mdsal.binding2.spec.base.TreeNode;
import org.opendaylight.mdsal.binding2.txt.builderConstructorHelperTemplate;
import org.opendaylight.mdsal.binding2.txt.builderTemplate;
import org.opendaylight.yangtools.concepts.Builder;
if ("java.lang.String".equals(propertyReturnType.getFullyQualifiedName())) {
sb.append(fieldName(property)).append(".toCharArray();");
// generated type InstanceIdentifier
- } else if ("org.opendaylight.mdsal.binding2.spec.InstanceIdentifier".equals(propertyReturnType
+ } else if ("org.opendaylight.mdsal.binding2.spec.base.InstanceIdentifier".equals(propertyReturnType
.getFullyQualifiedName())) {
sb.append(fieldName(field))
.append(" = ")
+++ /dev/null
-/*
- * Copyright (c) 2016 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.mdsal.binding2.spec;
-
-public interface Action<I extends Input<I> & Instantiable<I>, O extends Output<O> & Instantiable<O>> {
-
- void invoke(I input, RpcCallback<O> callback);
-}
--- /dev/null
+/*
+ * Copyright (c) 2017 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.mdsal.binding2.spec.base;
+
+/**
+ * The "action" statement is used to define an operation connected to a
+ * specific container or list data node. The "action" statement defines
+ * an action node in the schema tree. Under the action node, a schema node
+ * with the name "input" and a schema node with the name "output" are also
+ * defined. The nodes "input" and "output" are defined in the module’s namespace.
+ */
+public interface Action<I extends Input<I> & Instantiable<I>, O extends Output<O> & Instantiable<O>> {
+
+ void invoke(I input, RpcCallback<O> callback);
+}
/*
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
import com.google.common.base.Preconditions;
/*
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
/*
- * Copyright (c) 2013 - 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
import com.google.common.base.MoreObjects;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
+import org.opendaylight.mdsal.binding2.spec.structural.Augmentation;
+import org.opendaylight.mdsal.binding2.spec.structural.TreeChildNode;
import org.opendaylight.yangtools.concepts.Identifiable;
import org.opendaylight.yangtools.concepts.Immutable;
import org.opendaylight.yangtools.util.HashCodeBuilder;
/*
- * Copyright (c) 2013 - 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
+import org.opendaylight.mdsal.binding2.spec.structural.Augmentation;
+import org.opendaylight.mdsal.binding2.spec.structural.TreeChildNode;
import org.opendaylight.yangtools.concepts.Builder;
@Beta
/*
- * Copyright (c) 2013 - 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Iterables;
import java.util.Objects;
+import org.opendaylight.mdsal.binding2.spec.structural.Augmentation;
+import org.opendaylight.mdsal.binding2.spec.structural.TreeChildNode;
import org.opendaylight.yangtools.concepts.Identifiable;
import org.opendaylight.yangtools.util.HashCodeBuilder;
/*
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
/*
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
import com.google.common.base.Preconditions;
/*
- * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
/*
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
/*
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
/*
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
+import org.opendaylight.mdsal.binding2.spec.structural.TreeChildNode;
@Beta
public abstract class TreeArgument<T> {
/*
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
+import org.opendaylight.mdsal.binding2.spec.structural.TreeChildNode;
/**
*
- *
+ * Replaces org.opendaylight.yangtools.yang.binding.DataObject from Binding Spec v1
* @see TreeRoot
* @see TreeChildNode
*
*/
-
@Beta
public interface TreeNode {
/*
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.base;
import com.google.common.annotations.Beta;
/*
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.runtime;
import com.google.common.annotations.Beta;
import com.google.common.base.Preconditions;
/**
* Binding Namespace is structure of Java packages designed to prevent conflicts in YANG Java
* Binding, since Java does have only one namespace.
- *
- *
*/
@Beta
public enum BindingNamespaceType {
import java.io.Closeable;
import java.io.Flushable;
import java.io.IOException;
-import org.opendaylight.mdsal.binding2.spec.Augmentation;
-import org.opendaylight.mdsal.binding2.spec.IdentifiableItem;
-import org.opendaylight.mdsal.binding2.spec.Item;
-import org.opendaylight.mdsal.binding2.spec.TreeNode;
+import org.opendaylight.mdsal.binding2.spec.structural.Augmentation;
+import org.opendaylight.mdsal.binding2.spec.base.IdentifiableItem;
+import org.opendaylight.mdsal.binding2.spec.base.Item;
+import org.opendaylight.mdsal.binding2.spec.base.TreeNode;
/**
* Event Stream Writer for Binding version 2 Representation
import com.google.common.annotations.Beta;
import java.io.IOException;
-import org.opendaylight.mdsal.binding2.spec.TreeNode;
+import org.opendaylight.mdsal.binding2.spec.base.TreeNode;
/*
* A serializer which writes TreeNode to supplied stream event writer.
/*
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.structural;
import com.google.common.annotations.Beta;
import com.google.common.collect.ClassToInstanceMap;
/*
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.structural;
import com.google.common.annotations.Beta;
import org.opendaylight.yangtools.util.ClassLoaderUtils;
/*
- * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2017 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.mdsal.binding2.spec;
+package org.opendaylight.mdsal.binding2.spec.structural;
import com.google.common.annotations.Beta;
+import org.opendaylight.mdsal.binding2.spec.base.TreeArgument;
+import org.opendaylight.mdsal.binding2.spec.base.TreeNode;
import org.opendaylight.yangtools.util.ClassLoaderUtils;
+/**
+ *
+ * Replaces org.opendaylight.yangtools.yang.binding.ChildOf from Binding Spec v1
+ */
@Beta
public interface TreeChildNode<P extends TreeNode, I extends TreeArgument<?>> extends TreeNode {