[ 
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 <[email protected]>
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)

Reply via email to