From 2c40f1d74aaf81dfc0480aa4eae6c63e595db142 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Sat, 29 Oct 2016 12:37:52 +0200 Subject: [PATCH] BUG-7054: support .xml for YIN files Requiring .yin only is a bit restrictive, allow files to end with .xml, too. Change-Id: I0408326c9b4a1bdaa7ed9203651b2b0bf346668a Signed-off-by: Robert Varga --- .../yang/model/repo/api/YinTextSchemaSource.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinTextSchemaSource.java b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinTextSchemaSource.java index 2afe45f81e..ce6e3ce4f4 100644 --- a/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinTextSchemaSource.java +++ b/yang/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/repo/api/YinTextSchemaSource.java @@ -7,7 +7,6 @@ */ package org.opendaylight.yangtools.yang.model.repo.api; -import static com.google.common.base.Preconditions.checkArgument; import com.google.common.annotations.Beta; import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; @@ -30,9 +29,15 @@ public abstract class YinTextSchemaSource extends ByteSource implements YinSchem } public static SourceIdentifier identifierFromFilename(final String name) { - checkArgument(name.endsWith(".yin"), "Filename %s does not have a .yin extension", name); + final String baseName; + if (name.endsWith(".xml") || name.endsWith(".yin")) { + baseName = name.substring(0, name.length() - 4); + } else { + throw new IllegalArgumentException("Filename " + name + " does not have a .yin or .xml extension"); + } + // FIXME: add revision-awareness - return SourceIdentifier.create(name.substring(0, name.length() - 4), Optional.absent()); + return SourceIdentifier.create(baseName, Optional.absent()); } /** -- 2.36.6