You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Petr Kuzel (Jira)" <ji...@apache.org> on 2023/05/22 15:05:00 UTC

[jira] [Commented] (CAMEL-19279) Introduce a file component for Azure Files (mimic the FTP component)

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

Petr Kuzel commented on CAMEL-19279:
------------------------------------

I have started working on it at [https://github.com/pekuz/camel] with intention to contribute eventually. 

> Introduce a file component for Azure Files (mimic the FTP component)
> --------------------------------------------------------------------
>
>                 Key: CAMEL-19279
>                 URL: https://issues.apache.org/jira/browse/CAMEL-19279
>             Project: Camel
>          Issue Type: New Feature
>          Components: camel-azure
>    Affects Versions: 3.20.3
>         Environment: standalone or containerized Spring Boot app
>            Reporter: Petr Kuzel
>            Priority: Major
>             Fix For: 3.x
>
>   Original Estimate: 576.05h
>  Remaining Estimate: 576.05h
>
> I have a new RFE which includes integrating Microsoft Azure Files over public Internet.
>  
> Initial findings and constraints:
>  
>   - Azure Files do not implement the FTP standard.
>   - Azure Files could expose SMB protocol but SMB over public Internet is blacklisted by the security policy.
>   - Azure Files could expose NFS protocol but its pricing is prohibitive (so security has not been even evaluated).
>   - Azure Files have REST API <[https://github.com/Azure/azure-rest-api-specs]> and Java SDK <[https://github.com/azure/azure-sdk-for-java]>.
>   - My team is used to Camel 3.x components (includes the FTP component).
>  
> In pre-discussions having a Camel Azure Files component that extends RemoteFileComponent<FTPFile> took preference over trying to use the Camel REST component as a client of the Azure Files REST API.  
>  
> The Camel Azure Files component that extends RemoteFileComponent<> does not exist yet.
>  
> This feature request is to develop the Camel Azure Files component that supports:
>  
>   - producer
>   - consumer (polling unless Azure Java SDK allows event driven)
>   - secure auth over public Internet
>   - move and moveFailed
>   - filters  
>   - recursive
>   - read locks  (the changed lock unless Azure Java SDK allows a superior)
>   - timeouts (connect, read, write, changed lock)
>   - retries
>   - disconnect
>   - multiple protocol versions (if applicable)
>   - compatible with Camel 3.x
>   - many files 
>   - large files 
>  
> -----
> Appendix
> The initial question on the users mailing list, that ended with the recommendation to enter new Camel feature request for a file-based component.   
>  
> _Given that I see the two options:_
>  
>   _A: use Camel REST component._
>   _B: use Azure Files remote file component._
>  
> _Neither seems easy. For the Camel REST component, I'd need to implement a polling consumer via REST and match the FTPS component-like capabilities. For Azure Files, I have not found a developed Camel remote file component so its development would be required, i.e. likely a continuation at the Camel dev list..._



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