/*
 * Copyright (c) 2013 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.api;

import com.google.common.collect.ImmutableList;
import java.util.Collection;
import java.util.List;
import javax.annotation.Nonnull;
import org.opendaylight.yangtools.yang.common.QName;

/**
 * Interface describing YANG 'list' statement.
 * <p>
 * The 'list' statement is used to define an interior data node in the schema
 * tree. A list entry is uniquely identified by the values of the list's keys,
 * if defined.
 * </p>
 */
public interface ListSchemaNode extends DataNodeContainer, AugmentationTarget, DataSchemaNode,
        NotificationNodeContainer, ActionNodeContainer {
    /**
     * Returns the list of leaf identifiers.
     *
     * @return List of QNames of leaf identifiers of this list
     */
    List<QName> getKeyDefinition();

    /**
     * YANG 'ordered-by' statement. It defines whether the order of entries
     * within a list are determined by the user or the system. If not present,
     * default is false.
     *
     * @return true if ordered-by argument is "user", false otherwise
     */
    boolean isUserOrdered();

    /**
     * Returns unique constraints.
     *
     * @return Collection of unique constraints of this list schema node
     */
    @Nonnull
    default Collection<UniqueConstraint> getUniqueConstraints() {
        return ImmutableList.of();
    }
}

@@ -357,56 +357,8 @@
 i;%0A%0A
-import com.google.common.collect.ImmutableList;%0A
 impo
@@ -382,16 +382,16 @@
 ection;%0A
+
 import j
@@ -543,16 +543,19 @@
 tement.%0A
+ *%0A
  * %3Cp%3E%0A 
@@ -630,19 +630,16 @@
 e schema
-%0A *
  tree. A
@@ -672,16 +672,19 @@
 entified
+%0A *
  by the 
@@ -709,19 +709,16 @@
 's keys,
-%0A *
  if defi
@@ -726,16 +726,8 @@
 ed.%0A
- * %3C/p%3E%0A
  */%0A
@@ -1497,24 +1497,16 @@
 ull%0A    
-default 
 Collecti
@@ -1552,50 +1552,8 @@
 ts()
- %7B%0A        return ImmutableList.of();%0A    %7D
+;
 %0A%7D%0A

Make ListSchemaNode.getUniqueConstraints() non-default