[ 
https://issues.apache.org/jira/browse/NIFI-14325?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alaksiej Ščarbaty updated NIFI-14325:
-------------------------------------
    Description: 
A processor responsible for consuming [enterprise 
events|https://developer.box.com/guides/events/enterprise-events/]. The API 
should be similar to the existing 
[CounsumeBoxEvents|https://github.com/apache/nifi/blob/main/nifi-extension-bundles/nifi-box-bundle/nifi-box-processors/src/main/java/org/apache/nifi/processors/box/ConsumeBoxEvents.java].
 The difference is between Box Event APIs being used.
h3. Why not enhance the existing processor?

These are 2 similar yet different resources.

*Api difference.* User events are consumed using [long 
polling|https://developer.box.com/guides/events/user-events/polling/]. While 
Enterprise Events have to be pulled.

*Functionality difference.* User events support no event filtering. While 
Enterprise Events do. It also seems User Events with long polling don’t support 
consumption from a particular offset.

*Permissions difference.* Enterprise events require very broad Enterprise-wide 
permissions. While User events can be consumed with very basic permissions.

Taking all of this into account, it’d be better to distinguish between these 2 
use cases and create 2 separate processors.
h3. Input

Forbidden.
h3. Output
|*Relationship Name*|*Description*|
|success|Events received successfully will be sent out this relationship.|
h3. Parameters

 
|*Name*|*Description*|*Example Value*|
|Box Client Service|Controller Service used to obtain a Box API 
connection.|[BoxClientService instance]|
|Event Types|A comma separated list of Enterprise Events to consume. See 
supported Event Types in [Box 
documentation|https://developer.box.com/guides/events/enterprise-events/for-enterprise/#event-types].|COLLABORATION_ACCEPT,DELETE,GROUP_ADD_USER|
|Start Event Position|What position to consume the Events from. _Supported 
values = \{earliest, latest, a numerical stream_position value}._|earliest|

 

  was:
A processor responsible for consuming [enterprise 
events|https://developer.box.com/guides/events/enterprise-events/]. The API 
should be similar to the existing 
[CounsumeBoxEvents|https://github.com/apache/nifi/blob/main/nifi-extension-bundles/nifi-box-bundle/nifi-box-processors/src/main/java/org/apache/nifi/processors/box/ConsumeBoxEvents.java].
 The difference is between Box Event APIs being used.
h3. Why not enhance the existing processor?

These are 2 similar yet different resources.

*Api difference.* User events are consumed using [long 
polling|https://developer.box.com/guides/events/user-events/polling/]. While 
Enterprise Events have to be pulled.

*Functionality difference.* User events support no event filtering. While 
Enterprise Events do. It also seems User Events with long polling don’t support 
consumption from a particular offset.

*Permissions difference.* Enterprise events require very broad Enterprise-wide 
permissions. While User events can be consumed with very basic permissions.

Taking all of this into account, it’d be better to distinguish between these 2 
use cases and create 2 separate processors.
h3. Input

Forbidden.
h3. Output
|*Relationship Name*|*Description*|
|success|Events received successfully will be sent out this relationship.|
h3. Parameters

 
|*Name*|*Description*|*Example Value*|
|Box Client Service|Controller Service used to obtain a Box API 
connection.|[BoxClientService instance]|
|Stream Type|A Type of Box Enterprise Events Stream to consume data from. 
_Supported values = \{admin_logs, admin_logs_streaming}._|admin_logs_streaming|
|Event Types|A comma separated list of Enterprise Events to consume. See 
supported Event Types in [Box 
documentation|https://developer.box.com/guides/events/enterprise-events/for-enterprise/#event-types].|COLLABORATION_ACCEPT,DELETE,GROUP_ADD_USER|
|Start Event Position|What position to consume the Events from. _Supported 
values = \{earliest, latest, a numerical stream_position value}._|earliest|

 


> Create ConsumeBoxEnterpriseEvents processor
> -------------------------------------------
>
>                 Key: NIFI-14325
>                 URL: https://issues.apache.org/jira/browse/NIFI-14325
>             Project: Apache NiFi
>          Issue Type: Improvement
>          Components: Extensions
>            Reporter: Alaksiej Ščarbaty
>            Assignee: Alaksiej Ščarbaty
>            Priority: Major
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> A processor responsible for consuming [enterprise 
> events|https://developer.box.com/guides/events/enterprise-events/]. The API 
> should be similar to the existing 
> [CounsumeBoxEvents|https://github.com/apache/nifi/blob/main/nifi-extension-bundles/nifi-box-bundle/nifi-box-processors/src/main/java/org/apache/nifi/processors/box/ConsumeBoxEvents.java].
>  The difference is between Box Event APIs being used.
> h3. Why not enhance the existing processor?
> These are 2 similar yet different resources.
> *Api difference.* User events are consumed using [long 
> polling|https://developer.box.com/guides/events/user-events/polling/]. While 
> Enterprise Events have to be pulled.
> *Functionality difference.* User events support no event filtering. While 
> Enterprise Events do. It also seems User Events with long polling don’t 
> support consumption from a particular offset.
> *Permissions difference.* Enterprise events require very broad 
> Enterprise-wide permissions. While User events can be consumed with very 
> basic permissions.
> Taking all of this into account, it’d be better to distinguish between these 
> 2 use cases and create 2 separate processors.
> h3. Input
> Forbidden.
> h3. Output
> |*Relationship Name*|*Description*|
> |success|Events received successfully will be sent out this relationship.|
> h3. Parameters
>  
> |*Name*|*Description*|*Example Value*|
> |Box Client Service|Controller Service used to obtain a Box API 
> connection.|[BoxClientService instance]|
> |Event Types|A comma separated list of Enterprise Events to consume. See 
> supported Event Types in [Box 
> documentation|https://developer.box.com/guides/events/enterprise-events/for-enterprise/#event-types].|COLLABORATION_ACCEPT,DELETE,GROUP_ADD_USER|
> |Start Event Position|What position to consume the Events from. _Supported 
> values = \{earliest, latest, a numerical stream_position value}._|earliest|
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to