Alaksiej Ščarbaty created NIFI-14325:
----------------------------------------

             Summary: 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


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|
|Record Writer|A Record Writer to use for serializing Records to an output 
FlowFile.
If not specified, one FlowFile will be created for each Event that is captured. 
If the Record Writer is specified, all Events will be written to a single 
FlowFile instead of adding attributes to individual FlowFiles.
|[RecordSetWriterFactory instance]|



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

Reply via email to