On Tue, Jul 14, 2009 at 5:28 PM, Evan Martin<[email protected]> wrote: > On Tue, Jul 14, 2009 at 2:24 PM, Ant Bryan<[email protected]> wrote: >> This is an invitation to people from Chromium and other browser/ >> download application makers to collaborate on Metalink. > > This sounds pretty cool, but I suspect you know more about what is > needed to make this work than we do, and also more motivation to make > it happen. I think if you brought up a design questions like in > http://groups.google.com/group/metalink-discussion/msg/2c63ced761bc95e6?hl=en > on this mailing list you'd find some helpful answers.
Thanks for replying, Evan! >From the comment on the bug, mar...@chromium says "I wouldn't object to a contribution so I'll leave this issue available." We'd like help on where in the code to start contributing. :) I've copied those design questions at the end of this mail, if anyone has any guidance to offer, thanks! Here's the basic flow of a metalink download: User clicks on a URL to a metalink like http://openoffice.mirrorbrain.org/stable/3.1.0/OOo_3.1.0_src_core.tar.bz2.metalink metalink (XML) is downloaded. depending on file extension (.metalink) or MIME type (application/metalink+xml) the metalink is parsed for url element (by libxml2?) file from URL from url element is downloaded. when download is completed, file is checksummed (NSS?) and compared to checksum in hash element. This is an important issue to us & there is a $300 bounty for the feature if anyone's interested: http://groups.google.com/group/metalink-discussion/web/gsoc-ideas We're also happily accepting review/feedback on the Internet Draft: http://tools.ietf.org/html/draft-bryan-metalink thanks again! -- (( Anthony Bryan ... Metalink [ http://www.metalinker.org ] )) Easier, More Reliable, Self Healing Downloads From: Bram Neijt <[email protected]> Subject: Google Chrome intergration Hi everybody, I've taken a evening to stare at the Google Chrome browser code and below are some of the observations I've been doing. I've tried to find a good place to put the code that would handle the metalink and I haven't come up with the best possible solution yet (as far as I can see). Has anybody else had a look at the code, or are there thoughts floating around on this? Here's hoping somebody has better or more ideas on this ;) Bram ---- BEGIN NOTES: very sketchy, but if you saw the code you might understand. Crosses ([X]) are not an option, [?] means possible but not great. Possible inserts: [X] New browser url handler (BrowserURLHandler) Set a new browser url handlers Pro: will allow for new rendering scheme of XML Con: Won't always work, because it depends on the mime, not the extension or scheme [X] New URLRequest Create a new URLRequest which makes sure that any URL over HTTP is first mime-type sniffed (by the mime_sniffer_proxy) and then checks for the application/metalink mime-type. Pro: This should work. Con: What to do with a metalink with multiple files?? This would only result in a single stream, which can't support multiple files. [?] new DownloadItemView Go into the DownloadItemView and add a button: when a metalink is downloaded, allow people to push a button to start downloading the separate files. Pro: This would give people an option, but might leave them hanging. Making it automatic should not be a problem Con: This doesn't include the possibility of downloading from multiple streams to the same file yet. [?] onDonwloadComplete somewhere?? Maybe there is a hook which will allow us to spawn new downloads when a metalink is downloaded completely: after download, inspect the file and start downloads for the files next to the metalink. Not sure how to handle the whole restart thing, but maybe some country(UTC offset)/language checking and randomness would help. --~--~---------~--~----~------------~-------~--~----~ Chromium Developers mailing list: [email protected] View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~----------~----~----~----~------~----~------~--~---
