You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2017/05/03 22:28:04 UTC

[jira] [Commented] (MINIFI-294) Better handling of required vs. optional fields in config schema v1

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

ASF GitHub Bot commented on MINIFI-294:
---------------------------------------

GitHub user kevdoran opened a pull request:

    https://github.com/apache/nifi-minifi-cpp/pull/90

    MINIFI-294 Required vs. optional fields in config YAML

    Long description of the changes in this commit can be found in the
    JIRA for MINFI-294. Basically, better checks are now in place and
    in the case of missing required fields, better error messaging.
    This builds upon improvements made in MINIFI-275, and also
    updates the config.yml exampe in the README.md file to match the
    code.
    
    Thank you for submitting a contribution to Apache NiFi - MiNiFi C++.
    
    In order to streamline the review of the contribution we ask you
    to ensure the following steps have been taken:
    
    ### For all changes:
    - [ ] Is there a JIRA ticket associated with this PR? Is it referenced
         in the commit message?
    
    - [ ] Does your PR title start with MINIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
    
    - [ ] Has your PR been rebased against the latest commit within the target branch (typically master)?
    
    - [ ] Is your initial contribution a single, squashed commit?
    
    ### For code changes:
    - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)?
    - [ ] If applicable, have you updated the LICENSE file?
    - [ ] If applicable, have you updated the NOTICE file?
    
    ### For documentation related changes:
    - [ ] Have you ensured that format looks appropriate for the output in which it is rendered?
    
    ### Note:
    Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/kevdoran/nifi-minifi-cpp MINIFI-294-config-schema-v1-enhancements

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/nifi-minifi-cpp/pull/90.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #90
    
----
commit 080679e127409bbbd2662168dc740f5c00165a8b
Author: Kevin Doran <kd...@gmail.com>
Date:   2017-05-03T22:22:14Z

    MINIFI-294 Required vs. optional fields in config YAML
    
    Long description of the changes in this commit can be found in the
    JIRA for MINFI-294. Basically, better checks are now in place and
    in the case of missing required fields, better error messaging.
    This builds upon improvements made in MINIFI-275, and also
    updates the config.yml exampe in the README.md file to match the
    code.

----


> Better handling of required vs. optional fields in config schema v1
> -------------------------------------------------------------------
>
>                 Key: MINIFI-294
>                 URL: https://issues.apache.org/jira/browse/MINIFI-294
>             Project: Apache NiFi MiNiFi
>          Issue Type: Bug
>          Components: C++, Documentation, Processing Configuration
>            Reporter: Kevin Doran
>            Assignee: Kevin Doran
>            Priority: Critical
>             Fix For: cpp-0.2.0
>
>
> This is a followup task to MINIFI-275. While the scope of MINIFI-275 was minifi-cpp processing of components without id fields, which are optional in config schema v1, this ticket covers all fields for all component types, either doing string checks for required fields (with useful error messages if absent) or graceful handling of missing optional fields.
> The Config Schema V1 in the minifi-java codebase will be used as a guide for which fields to treat as required and which to treat as optional. [~aldrin] - please confirm that is the correct assumption for minifi-cpp. The Java implementation can be found at [1]. Specifically, in the Java code, required fields are loaded using `getRequiredKeyAsType() and optional fields are loaded using `getOptionalKeyAsType()`
> Also in scope for this ticket is to update the config.yml examples in the minifi-cpp README.md file to make sure they are not missing required fields. During testing, it was found that one example config.yml is missing source name and destination name, which are required in config schema v1.
> [1] https://github.com/apache/nifi-minifi/tree/master/minifi-commons/minifi-commons-schema/src/main/java/org/apache/nifi/minifi/commons/schema/v1



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)