On Tue, 11 Aug 2020 at 01:20, Gary Gregory <[email protected]> wrote:
>
> On Mon, Aug 10, 2020 at 8:00 PM Gary Gregory <[email protected]> wrote:
>
> > On Mon, Aug 10, 2020 at 7:45 PM sebb <[email protected]> wrote:
> >
> >> On Tue, 11 Aug 2020 at 00:19, Gary Gregory <[email protected]>
> >> wrote:
> >> >
> >> > On Mon, Aug 10, 2020 at 5:35 PM sebb <[email protected]> wrote:
> >> >
> >> > > On Mon, 10 Aug 2020 at 21:51, Gary Gregory <[email protected]>
> >> wrote:
> >> > > >
> >> > > > On Sun, Aug 9, 2020 at 7:07 AM sebb <[email protected]> wrote:
> >> > > >
> >> > > > > On Fri, 7 Aug 2020 at 19:29, <[email protected]> wrote:
> >> > > > > >
> >> > > > > > This is an automated email from the ASF dual-hosted git
> >> repository.
> >> > > > > >
> >> > > > > > ggregory pushed a commit to branch master
> >> > > > > > in repository
> >> https://gitbox.apache.org/repos/asf/commons-io.git
> >> > > > > >
> >> > > > > >
> >> > > > > > The following commit(s) were added to refs/heads/master by this
> >> push:
> >> > > > > >      new 9407c2a  Since the default behavior of file copying of
> >> > > > > attributes is OS dependent, we give the new target file the
> >> current
> >> > > > > timestamp when preserveFileDate is false.
> >> > > > > > 9407c2a is described below
> >> > > > >
> >> > > > > -1
> >> > > > >
> >> > > > > We should not change the generated file date unless
> >> preserveFileDate is
> >> > > > > true.
> >> > > > >
> >> > > > > As it is  now, the target file will be created with an OS-provided
> >> > > > > modification time, which is then overridden by an arbitrary
> >> timestamp
> >> > > > > some time in the future.
> >> > > > >
> >> > > > > That seems wrong, and changes the existing behaviour.
> >> > > > >
> >> > > >
> >> > > > Please review git master for my latest.
> >> > >
> >> > > OK, that part now looks OK.
> >> > >
> >> > > However both doCopyFile and doCopyDirectory now return a boolean value
> >> > > which is never used.
> >> > > Why is that?
> >> > >
> >> >
> >> > Both methods _do_ use this flag.
> >>
> >> Huh?
> >> The methods return a boolean value which is not used by the callers.
> >>
> >
> > Ah, right, I misread your message, you're talking about _return_  values.
> >
> > Yeah, well, I'm not sure what's worse:
> >
> > 1) Propagating the return value of setLastModifed() to call sites, which
> > feels C-like and wrong instead of throwing an Exception.
> > 2) Convert the result of setLastModifed() where it is called to an
> > IOException; which feels more Java-like.
> >
>
> I implemented (2) and I feel the code is much better.

Agreed. If the modification fails the user should be told.


> Gary
>
>
> > 3) Something else.
> >
> > WDYT?
> >
> > Gary
> >
> >
> >> > Gary
> >> >
> >> >
> >> > >
> >> > > > Thank you Sebb!
> >> > > > Gary
> >> > > >
> >> > > >
> >> > > > >
> >> > > > > > commit 9407c2af641e81a16f9c4339b2dcf5a314897ed9
> >> > > > > > Author: Gary Gregory <[email protected]>
> >> > > > > > AuthorDate: Fri Aug 7 14:29:05 2020 -0400
> >> > > > > >
> >> > > > > >     Since the default behavior of file copying of attributes is
> >> OS
> >> > > > > >     dependent, we give the new target file the current
> >> timestamp when
> >> > > > > >     preserveFileDate is false.
> >> > > > > > ---
> >> > > > > >  src/main/java/org/apache/commons/io/FileUtils.java | 7 ++-----
> >> > > > > >  1 file changed, 2 insertions(+), 5 deletions(-)
> >> > > > > >
> >> > > > > > diff --git a/src/main/java/org/apache/commons/io/FileUtils.java
> >> > > > > b/src/main/java/org/apache/commons/io/FileUtils.java
> >> > > > > > index 7bee5bf..61b1541 100644
> >> > > > > > --- a/src/main/java/org/apache/commons/io/FileUtils.java
> >> > > > > > +++ b/src/main/java/org/apache/commons/io/FileUtils.java
> >> > > > > > @@ -1387,7 +1387,7 @@ public class FileUtils {
> >> > > > > >       * position
> >> > > > > >       */
> >> > > > > >      private static boolean doCopyFile(final File srcFile,
> >> final File
> >> > > > > destFile, final boolean preserveFileDate, CopyOption...
> >> copyOptions)
> >> > > > > > -            throws IOException {
> >> > > > > > +        throws IOException {
> >> > > > > >          if (destFile.exists() && destFile.isDirectory()) {
> >> > > > > >              throw new IOException("Destination '" + destFile +
> >> "'
> >> > > > > exists but is a directory");
> >> > > > > >          }
> >> > > > > > @@ -1401,10 +1401,7 @@ public class FileUtils {
> >> > > > > >          // TODO IO-386: Do we still need this check?
> >> > > > > >          checkEqualSizes(srcFile, destFile, srcFile.length(),
> >> > > > > destFile.length());
> >> > > > > >
> >> > > > > > -        if (preserveFileDate) {
> >> > > > > > -            return
> >> destFile.setLastModified(srcFile.lastModified());
> >> > > > > > -        }
> >> > > > > > -        return true;
> >> > > > > > +        return destFile.setLastModified(preserveFileDate ?
> >> > > > > srcFile.lastModified() : System.currentTimeMillis());
> >> > > > > >      }
> >> > > > > >
> >> > > > > >
> >> > > > >
> >> > >
> >> //-----------------------------------------------------------------------
> >> > > > > >
> >> > > > >
> >> > > > >
> >> ---------------------------------------------------------------------
> >> > > > > To unsubscribe, e-mail: [email protected]
> >> > > > > For additional commands, e-mail: [email protected]
> >> > > > >
> >> > > > >
> >> > >
> >> > > ---------------------------------------------------------------------
> >> > > To unsubscribe, e-mail: [email protected]
> >> > > For additional commands, e-mail: [email protected]
> >> > >
> >> > >
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [email protected]
> >> For additional commands, e-mail: [email protected]
> >>
> >>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to