ForceDatesForTree (A file utility)
Copyright (C) 2008 42 Degrees Design

Force Dates For Tree is a simple utility that walks through a source tree, compares it to a
destination tree, and any files it finds that match in file size it ensures also match
in last write date.  Note that it does not actually compare the two files, just their sizes.

This utility is useful if you have two synchronized directory trees but for some reason the
write dates for one set have become either corrupted or simply updated.  This will allow you
to bring them back into synch quickly so that future comparisons will correctly be able to
tell if the files have changed.

There is no need to install this program, simply run it.  It stores no configuration
information or user information.  It will not modify any files in the source tree, only
in the destination.

I wrote this tool because Jungle Disk has the bad habit of updating the write date on the
remote files and I wanted to get that fixed without having to re-upload the files (which
costs money).

The tool does have size and depth limitations.  This is simply to prevent it from failing.
Since you can always target sub-directory trees this shouldn't be an issue for the vast
majority of people.  The current size limitations are:

Files: 100,000 total files in one batch
Depth: no more than 50 directories deep in one batch

Note that this tool only supports a Jungle Disk that is installed using the default
port number (2667) so if you have customized the port or if you have multiple Jungle Disks
this tool may not work properly for you.  If you really need the tool to work on a non-
standard port, please send me some e-mail and if I get enough people wanting that, I'll
go to the trouble of creating the customization to make the port number dynamic.

Note also that you should see "Jungle Disk Detected" show up under the destination text box
if the destination is a Jungle Disk.  If you do not see this the tool will still work
but it will use normal file system calls to change the dates and this causes Jungle Disk
to download each file changed.  If it detects it the tool talks directly to Jungle Disk
to update the date and does not require downloading the file.

If you did not get this directly from my web site you should consider it suspect:

http://www.pingbot.com/ForceDatesForTree.html

Now for the legal claptrap:

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
