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

Kevin Doran commented on NIFI-4801:
-----------------------------------

Yep, that's correct [~mcgilman]. The spec changing was an unintentional side 
effect of changes across the versions of the swagger annotations that we are 
using. There was no Java code change. 

[~chaffelson] - Using the new version of the swagger library we are on, I'm 
able to tweak the annoation I added to make the output more consistent with 
what it was in version <=1.4, which I agree is desirable. Here is what I have 
now:

{noformat}
  "parameters" : [ {
    "name" : "id",
    "in" : "path",
    "description" : "The process group id.",
    "required" : true,
    "type" : "string"
  }, {
    "name" : "template",
    "in" : "formData",
    "description" : "The binary content of the template file being uploaded.",
    "required" : true,
    "type" : "file"
  } ],
{noformat}

The new version differs from <=1.4 only in that the template parameter is now 
labeled required, but it really always has been required and prior to this was 
just incorrectly marked as optional.

By the way, given that a lot of discussion has happened on this ticket, I've 
closed NIFI-4796 as a duplicate and my PR will reference this ticket. I will 
leave the tickets linked for informational purposes. cc 
[[email protected]].

> Rest-api swagger definition produces non-functional template import in Python
> -----------------------------------------------------------------------------
>
>                 Key: NIFI-4801
>                 URL: https://issues.apache.org/jira/browse/NIFI-4801
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework
>    Affects Versions: 1.5.0, 1.6.0
>         Environment: Python 2.7/3.6
>            Reporter: Daniel Chaffelson
>            Assignee: Kevin Doran
>            Priority: Major
>
> The swagger.json produced when compiling NiFi-1.5.0 results in a 
> ProcessgroupsApi().upload_template function that only accepts the id of the 
> Process Group to receive the template, and no option to specify the template 
> itself.
> It would appear that the underlying API call expects the template to be the 
> body of the request, but the produced function does not allow it to be 
> specified. This is changed from NiFi-1.2.0 where a  'template' keyword 
> argument was included.
> It may also be related to how the TemplatesApi().export_template function 
> used to produce a TemplateDTO and now produces a string. 
> I am unsure in which version since 1.2.0 this changed, it may not 
> specifically be just 1.5.0 code.
> An example of the procedurally generated code can be found at:
> [https://github.com/Chaffelson/nifi-python-swagger-client/blob/master/swagger_client/apis/processgroups_api.py]
> And documentation at:
> [http://nifi-python-swagger-client.readthedocs.io/en/latest/ProcessgroupsApi/#upload_template]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to