| Summary: | [api] unable to save task data for messages with an id that is not compatible with the filesystem | ||||||
|---|---|---|---|---|---|---|---|
| Product: | z_Archived | Reporter: | Shawn Minto <shawn.minto> | ||||
| Component: | Mylyn | Assignee: | Steffen Pingel <steffen.pingel> | ||||
| Status: | RESOLVED FIXED | QA Contact: | |||||
| Severity: | major | ||||||
| Priority: | P2 | CC: | robert.elves, steffen.pingel | ||||
| Version: | unspecified | ||||||
| Target Milestone: | 3.0 | ||||||
| Hardware: | PC | ||||||
| OS: | Windows XP | ||||||
| Whiteboard: | |||||||
| Bug Depends on: | |||||||
| Bug Blocks: | 226822 | ||||||
| Attachments: |
|
||||||
|
Description
Shawn Minto
Rob, Steffen: not sure who is best to handle this one. The offline storage needs to properly encode the filenames before serializing to disk, e.g. use Base64. Reassigning to Rob who is more familiar with that code. Unless we decide to encode the IDs in a filesystem compatible way, we need to specify the legal ID format in the Javadoc. Rob, I'll consider this as part of the task data refactoring that is needed for the new editor architecture. It is likely that we will have to do some type of data migration and we can encode handles as part of that. Shawn, do you have a suggestion for an encoding that will work for file systems? I think that Base64 would be the best choice for this encoding. The only issue is that it makes the information stored on disk very unreadable. To get around this bug, I URL encoded the Task id, then replaced any other offending characters with the base 64 version. This seems to work. Here is an example of Base64 encoded path name: .mylyn/tasks/jira-aHR0cDovL215bHluLmVjbGlwc2Uub3JnL2ppcmEtZW50ZXJwcmlzZS0zLjk\=/MTQxNjE\=/ I think we would be better off writing our own escaping routine. I opted for a homegrown URL encoding like implementation that escapes anything that is not a number or latin letter: .mylyn/tasks/jira-http%3A%2F%2Fmylyn%2Eeclipse%2Eorg%2Fjira%2Denterprise%2D3%2E9/14162/jira-data.zip Created attachment 98759 [details]
mylyn/context/zip
|