X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fconfig%2Fyang-store-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Fyang%2Fstore%2Fimpl%2FYangParserWrapper.java;fp=opendaylight%2Fconfig%2Fyang-store-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Fyang%2Fstore%2Fimpl%2FYangParserWrapper.java;h=0000000000000000000000000000000000000000;hp=7c428181aa5e63bacf1fcabf7875b98f739ce587;hb=c99a5bb839b67beefc5a339e60438894ab4037c2;hpb=a8ceea323c972b086d3c9e6817dce53659ce8343 diff --git a/opendaylight/config/yang-store-impl/src/main/java/org/opendaylight/controller/config/yang/store/impl/YangParserWrapper.java b/opendaylight/config/yang-store-impl/src/main/java/org/opendaylight/controller/config/yang/store/impl/YangParserWrapper.java deleted file mode 100644 index 7c428181aa..0000000000 --- a/opendaylight/config/yang-store-impl/src/main/java/org/opendaylight/controller/config/yang/store/impl/YangParserWrapper.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * 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.controller.config.yang.store.impl; - -import com.google.common.collect.Sets; -import org.apache.commons.io.IOUtils; -import org.opendaylight.controller.config.yang.store.api.YangStoreException; -import org.opendaylight.yangtools.yang.model.api.Module; -import org.opendaylight.yangtools.yang.model.api.SchemaContext; -import org.opendaylight.yangtools.yang.model.parser.api.YangModelParser; -import org.opendaylight.yangtools.yang.parser.impl.YangParserImpl; - -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; -import java.util.Map; - -public class YangParserWrapper { - - /** - * throw IllegalStateException if it is unable to parse yang files - */ - public static SchemaContext parseYangFiles(Collection yangFilesAsInputStreams) { - YangParserImpl parser = getYangParserInstance(); - Map mappedYangModules = null; - try { - mappedYangModules = parseYangFiles(parser, yangFilesAsInputStreams); - } catch (YangStoreException e) { - throw new IllegalStateException("Unable to parse yang files", e); - } - return getSchemaContextFromModules(parser, mappedYangModules); - } - - static YangParserImpl getYangParserInstance() { - return new YangParserImpl(); - } - - static SchemaContext getSchemaContextFromModules(YangModelParser parser, Map allYangModules) { - return parser.resolveSchemaContext(Sets - .newHashSet(allYangModules.values())); - } - - static Map parseYangFiles(YangModelParser parser, Collection allInput) throws YangStoreException { - List bufferedInputStreams = new ArrayList<>(); - for (InputStream is : allInput) { - String content; - try { - content = IOUtils.toString(is); - } catch (IOException e) { - throw new YangStoreException("Can not get yang as String from " - + is, e); - } - InputStream buf = new ByteArrayInputStream(content.getBytes()); - bufferedInputStreams.add(buf); - } - - return parser - .parseYangModelsFromStreamsMapped(bufferedInputStreams); - } -}