You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@airavata.apache.org by Dinuka Desilva <l....@gmail.com> on 2020/04/19 14:16:44 UTC

[airavata-mft] Box transport agent for airavata mft

Dear community,

I started working on box transport for airavata-mft agent. For now, let me
share my findings.

There's an SDK available as a maven dependency [2] and they do have a
comprehensive documentation [3].

So, far I couldn't find a way to create or recreate files by path. Instead
it supports only recreating an existing file by id [4] or uploading a new
file to an identified folder which requires both folder id and file id
[4][5], So, assuming creation by path is not supported, both source and
destination files have to be available before the transport.

One limitation found in uploading was that uploading chunks is limited to
files larger than 20mb [1]. So, the transport method has to check the file
size and decide whether to uploaded as chunks or not.

Still I'm working on to figure out an authentication method [6]. I could
find only dev token [8] to be working yet. They provide an app token, which
seems limited only to some api calls [7]. And the other options are JWT
and Oauth2. While Oauth2 is out of the scope, JWT has many options to get a
connection without a login though neither worked to me yet.

References
[1] https://developer.box.com/guides/uploads/chunked/
[2] http://opensource.box.com/box-java-sdk/
[3] https://github.com/box/box-java-sdk/blob/master/doc/files.md
[4]
https://github.com/box/box-java-sdk/blob/master/doc/files.md#upload-a-large-file-version-in-chunks
[5]
https://github.com/box/box-java-sdk/blob/master/doc/folders.md#get-a-folders-information
[6] https://github.com/box/box-java-sdk/blob/master/doc/authentication.md
[7] https://developer.box.com/guides/embed/box-view/
[8]
https://github.com/box/box-java-sdk/blob/master/doc/authentication.md#developer-token

Regards,
Dinuka

Re: [airavata-mft] Box transport agent for airavata mft

Posted by DImuthu Upeksha <di...@gmail.com>.
Hi Dinuka,

I reviewed your pending PR and it looks really good. I'm glad that you have
followed standard coding style to make this more consistent with the rest
of the code. I will reply inline for your comments

[9] https://github.com/apache/airavata-mft/pull/5

Thanks
Dimuthu

On Sun, Apr 19, 2020 at 11:26 AM Apache Airavata <sm...@gmail.com>
wrote:

> Hi Dinuka,
>
> Thanks for the nice summary and for your contributions. These style of
> communication is a good example for GSOC students to follow.
>
> Suresh
>
> On Apr 19, 2020, at 10:17 AM, Dinuka Desilva <l....@gmail.com>
> wrote:
>
> 
> Dear community,
>
> I started working on box transport for airavata-mft agent. For now, let me
> share my findings.
>
> There's an SDK available as a maven dependency [2] and they do have a
> comprehensive documentation [3].
>
> So, far I couldn't find a way to create or recreate files by path. Instead
> it supports only recreating an existing file by id [4] or uploading a new
> file to an identified folder which requires both folder id and file id
> [4][5], So, assuming creation by path is not supported, both source and
> destination files have to be available before the transport.
>
> Looking at the documentation, they support us to provide the file id when
uploading the file. Can't we use as the alternative for resource path?


> One limitation found in uploading was that uploading chunks is limited to
> files larger than 20mb [1]. So, the transport method has to check the file
> size and decide whether to uploaded as chunks or not.
>
> Still I'm working on to figure out an authentication method [6]. I could
> find only dev token [8] to be working yet. They provide an app token, which
> seems limited only to some api calls [7]. And the other options are JWT
> and Oauth2. While Oauth2 is out of the scope, JWT has many options to get a
> connection without a login though neither worked to me yet.
>
> References
> [1] https://developer.box.com/guides/uploads/chunked/
> [2] http://opensource.box.com/box-java-sdk/
> [3] https://github.com/box/box-java-sdk/blob/master/doc/files.md
> [4]
> https://github.com/box/box-java-sdk/blob/master/doc/files.md#upload-a-large-file-version-in-chunks
> [5]
> https://github.com/box/box-java-sdk/blob/master/doc/folders.md#get-a-folders-information
> [6] https://github.com/box/box-java-sdk/blob/master/doc/authentication.md
> [7] https://developer.box.com/guides/embed/box-view/
> [8]
> https://github.com/box/box-java-sdk/blob/master/doc/authentication.md#developer-token
>
> Regards,
> Dinuka
>
>

Re: [airavata-mft] Box transport agent for airavata mft

Posted by Apache Airavata <sm...@gmail.com>.
Hi Dinuka,

Thanks for the nice summary and for your contributions. These style of communication is a good example for GSOC students to follow.

Suresh

> On Apr 19, 2020, at 10:17 AM, Dinuka Desilva <l....@gmail.com> wrote:
> 
> 
> Dear community,
> 
> I started working on box transport for airavata-mft agent. For now, let me share my findings.
> 
> There's an SDK available as a maven dependency [2] and they do have a comprehensive documentation [3].
> 
> So, far I couldn't find a way to create or recreate files by path. Instead it supports only recreating an existing file by id [4] or uploading a new file to an identified folder which requires both folder id and file id [4][5], So, assuming creation by path is not supported, both source and destination files have to be available before the transport.
> 
> One limitation found in uploading was that uploading chunks is limited to files larger than 20mb [1]. So, the transport method has to check the file size and decide whether to uploaded as chunks or not.
> 
> Still I'm working on to figure out an authentication method [6]. I could find only dev token [8] to be working yet. They provide an app token, which seems limited only to some api calls [7]. And the other options are JWT and Oauth2. While Oauth2 is out of the scope, JWT has many options to get a connection without a login though neither worked to me yet.
> 
> References
> [1] https://developer.box.com/guides/uploads/chunked/
> [2] http://opensource.box.com/box-java-sdk/
> [3] https://github.com/box/box-java-sdk/blob/master/doc/files.md
> [4] https://github.com/box/box-java-sdk/blob/master/doc/files.md#upload-a-large-file-version-in-chunks
> [5] https://github.com/box/box-java-sdk/blob/master/doc/folders.md#get-a-folders-information
> [6] https://github.com/box/box-java-sdk/blob/master/doc/authentication.md
> [7] https://developer.box.com/guides/embed/box-view/
> [8] https://github.com/box/box-java-sdk/blob/master/doc/authentication.md#developer-token
> 
> Regards,
> Dinuka