Bug 1186972

Summary: RFE: Server-side file conversion and REST service
Product: [Retired] Zanata Reporter: Ding-Yi Chen <dchen>
Component: Component-APIAssignee: Alex Eng <aeng>
Status: CLOSED CURRENTRELEASE QA Contact: Ding-Yi Chen <dchen>
Severity: high Docs Contact:
Priority: high    
Version: developmentCC: aeng, camunoz, sflaniga, zanata-bugs
Target Milestone: ---Keywords: Triaged
Target Release: 3.7   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: 3.7.0-SNAPSHOT (git-jenkins-zanata-server-build-integration-master-5214) Doc Type: Bug Fix
Doc Text:
Story Points: 8
Clone Of: Environment:
Last Closed: 2015-07-22 02:20:11 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1217671    

Description Ding-Yi Chen 2015-01-29 02:28:15 UTC
Description of problem:

Consideration of Server-side file conversion and REST service:
 * Server tasks
   * REST services to support all file types (raw upload of all formats that we support in the client)
   * 'File' project type will now support both okapi (.odt, idml, etc.) and Properties/Utf8Properties projects
   * Server to check file size and filename before accepting, reject files that are larger than our current maximum file size.
   * Use existing async framework to process the uploaded files.
       * One call to deliver the file, multiple subsequent calls to ask for progress
 * Sent file should send following metadata:
   * MIME type
   * File size  
   * File name 
 * Have the upload (from the JavaScript) use the REST API
 * project-type
    only File, but support all the file types in it
 * push
     source and translation
 * pull
     source and translation

Future enhancements:
 * File handling (future enhancement to allow thin java client)
   * Which files to be pushed/pulled
   * File mapping rule
   * Streaming for text base translation formats (e.g. gettext)
   * (Optional) compress the uploaded file. gzip is a good option.
   * Keep previous version of the uploaded file.

Comment 1 Carlos Munoz 2015-02-26 01:43:21 UTC
Michelle, we might want to raise the priority on this one. It's one that will let us have a thinner clients. We can discuss.

Comment 2 Michelle Kim 2015-03-02 23:56:33 UTC
Agreed. Making this issue high priority to work on in coming sprints. Thanks.

Comment 4 Alex Eng 2015-04-13 00:36:23 UTC
zanata-server: https://github.com/zanata/zanata-server/pull/772

Comment 5 Sean Flanigan 2015-04-29 04:26:39 UTC
Testing/requirements note: Should we make sure that you can still download translated properties/xliff files even if the raw document has been removed from the file system?

Comment 6 Alex Eng 2015-05-11 05:02:02 UTC
See Also: https://bitbucket.org/okapiframework/okapi/issue/459

Comment 7 Ding-Yi Chen 2015-05-12 04:46:25 UTC
VERIFIED with Zanata 3.7.0-SNAPSHOT (git-jenkins-zanata-server-build-integration-master-5214)

Client: Zanta 3.7.0-SNAPSHOT (commit: 57b61850cc35e0f01182531062fe74a55c698400)