any23-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ANY23-308) Adding option "-d" to yaml file parsing gives error
Date Tue, 11 Jul 2017 23:05:00 GMT

    [ https://issues.apache.org/jira/browse/ANY23-308?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16083143#comment-16083143
] 

ASF GitHub Bot commented on ANY23-308:
--------------------------------------

Github user ansell commented on a diff in the pull request:

    https://github.com/apache/any23/pull/42#discussion_r126829476
  
    --- Diff: utils/src/main/java/org/apache/any23/extractor/yaml/YAMLValidator.java ---
    @@ -0,0 +1,105 @@
    +/*
    + * Copyright 2017 The Apache Software Foundation.
    + *
    + * Licensed under the Apache License, Version 2.0 (the "License");
    + * you may not use this file except in compliance with the License.
    + * You may obtain a copy of the License at
    + *
    + *      http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * Unless required by applicable law or agreed to in writing, software
    + * distributed under the License is distributed on an "AS IS" BASIS,
    + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    + * See the License for the specific language governing permissions and
    + * limitations under the License.
    + */
    +package org.apache.any23.extractor.yaml;
    +
    +import com.google.common.collect.Iterables;
    +import java.io.BufferedInputStream;
    +import java.io.IOException;
    +import java.io.InputStream;
    +import java.util.Scanner;
    +import java.util.regex.Pattern;
    +import org.slf4j.Logger;
    +import org.slf4j.LoggerFactory;
    +import org.yaml.snakeyaml.Yaml;
    +
    +/**
    + * Utility class provides static methods for YAML validation.
    + *
    + * @author Jacek Grzebyta (grzebyta.dev [at] gmail.com)
    + */
    +public class YAMLValidator {
    +
    +    private static final Logger log = LoggerFactory.getLogger(YAMLValidator.class);
    +
    +    private static final Pattern YAML_PATTERN = Pattern.compile("^%YAML.*", Pattern.CASE_INSENSITIVE);
    +
    +    /**
    +     * Detects if is contains valid YAML content.
    +     * <p>
    +     * In the first instance it checks if there is "%YAML" head. If not check
    +     * using the brute force method by parsing input stream with yaml parser.
    +     * </p>
    +     * <p>
    +     * NB. Only "false" results are trusted. Even if result is "true" you cannot
    +     * be sure that InputStream contains YAML intentional context because
    +     * comma-separated-values are pars-able by YAML parser as well.
    +     * </p>
    +     *
    +     * @param is {@link InputStream}
    +     * @return
    +     * @throws IOException
    +     */
    +    public static boolean isYAML(InputStream is) throws IOException {
    +        if (is == null) {
    +            return false;
    +        }
    +
    +        if (!is.markSupported()) {
    +            is = new BufferedInputStream(is);
    +        }
    +
    +        boolean result = false;
    --- End diff --
    
    A variable isn't a great idea in the default false case, as you can simply return true
whenever you decide it is try (and rely on try-finally to cleanup), and then return false
at the end of the method.


> Adding option "-d" to yaml file parsing gives error
> ---------------------------------------------------
>
>                 Key: ANY23-308
>                 URL: https://issues.apache.org/jira/browse/ANY23-308
>             Project: Apache Any23
>          Issue Type: Bug
>          Components: rover
>    Affects Versions: 2.0
>            Reporter: Jacek
>            Assignee: Jacek
>            Priority: Minor
>             Fix For: 2.1
>
>
> Command 
> {code:none}
> any23 rover -e yaml -d "urn:test#" -f turtle some_yaml_file.yaml
> {code}
> gives `No suitable extractors found`.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message