2008/5/29 Maarten Coene : > So maybe it should be an attribute on the ivy:retrieve task? Yes : task attribute and/or settings attribute are both valid. > I think the files in the cache should have the same timestamp as on the server. > This way, you still have the choice what you want to do with the timestamp when the artifacts are already resolved. Very good point. > > Maarten > > > ----- Original Message ---- > From: Gilles Scokart > To: Ant Developers List > Sent: Thursday, May 29, 2008 9:51:58 AM > Subject: Re: [Ivy] How to add a new option to ivy settings > > Maybe because later an other user will have the oposite requirements : > I want the retreive to use the current timestamp, so that I know when > I made the retrieve, I know which files have been updated by my last > retrieve, I can use some kind of up-to-date task, and I can also > better integrate my retrieved libraries into my source control > repository. > > I think both requirements are valid, so it should be configurable. > > Gilles > > 2008/5/29 Xavier Hanin : >> On Thu, May 29, 2008 at 9:35 AM, Maarten Coene >> wrote: >> >>> Why not always use the server timestamp for the artifacts as we already do >>> for the Ivy files? >> >> Why not, indeed, I see no specific reason. >> >> Xavier >> >> >>> >>> >>> Maarten >>> >>> ----- Original Message ---- >>> From: Xavier Hanin >>> To: Ant Developers List >>> Sent: Thursday, May 29, 2008 8:51:36 AM >>> Subject: Re: [Ivy] How to add a new option to ivy settings >>> >>> As Gilles suggested, I'd better put that in settings, which is also much >>> easier to add (you only need a setter on the resolver to recognize an >>> attribute for the resolver in the settings file, pretty much like how Ant >>> tasks work). Still to do what you want in the ivy file you have to modify >>> XmlModuleDescriptorParser, the ModuleDescriptor interface and its default >>> implementation. >>> >>> HTH, >>> >>> Xavier >>> >>> On Thu, May 29, 2008 at 6:13 AM, Claudio Miranda >>> wrote: >>> >>> > >>> > >>> > I modified the code displayed below. >>> > At BasicURLHandler, how is it possible to retrieve de value of >>> > "timestamp" attribute (from ivy.xml) >>> > >>> > Index: src/java/org/apache/ivy/util/url/BasicURLHandler.java >>> > =================================================================== >>> > --- src/java/org/apache/ivy/util/url/BasicURLHandler.java (revision >>> > 661197) >>> > +++ src/java/org/apache/ivy/util/url/BasicURLHandler.java (working >>> > copy) >>> > @@ -131,6 +131,10 @@ >>> > "Downloaded file size doesn't match expected >>> > Content Length for " + src >>> > + ". Please retry."); >>> > } >>> > + boolean remoteTimestamp = false; >>> > + if (remoteTimestamp) { >>> > + dest.setLastModified(srcConn.getLastModified()); >>> > + } >>> > } finally { >>> > disconnect(srcConn); >>> > >>> > >>> > Index: src/java/org/apache/ivy/plugins/parser/xml/ivy.xsd >>> > =================================================================== >>> > --- src/java/org/apache/ivy/plugins/parser/xml/ivy.xsd (revision 661197) >>> > +++ src/java/org/apache/ivy/plugins/parser/xml/ivy.xsd (working copy) >>> > @@ -229,10 +229,19 @@ >>> > >>> > >>> > >>> > - >> > name="defaultconf" type="xs:string"/> >>> > - >> > name="defaultconfmapping" type="xs:string"/> >>> > + >> > type="xs:string"/> >>> > + >> > type="xs:string"/> >>> > >> > type="xs:boolean" /> >>> > - >>> > + >> > use="optional"> >>> > + >>> > + >>> > + >>> > + >>> > + >>> > + >>> > + >>> > + >>> > >>> > >>> > >>> > Index: >>> > src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParser.java >>> > =================================================================== >>> > --- >>> > src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParser.java >>> > (revision 661197) >>> > +++ >>> > src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParser.java >>> > (working copy) >>> > @@ -520,6 +520,10 @@ >>> > if (confMappingOverride != null) { >>> > >>> > >>> md.setMappingOverride(Boolean.valueOf(confMappingOverride).booleanValue()); >>> > } >>> > + String timestamp = >>> > ivy.substitute(attributes.getValue("timestamp")); >>> > + if (timestamp != null) { >>> > + md.setTimestamp(timestamp); >>> > + } >>> > checkConfigurations(); >>> > >>> > >>> > Claudio Miranda wrote: >>> > > >>> > > >>> > > I am doing some testing with Ivy and have implemented a small >>> > > modification, to allow the downloaded resource to have the same date >>> > > timestamp as the file in remote repo. It is a requirement from the >>> > > customer. >>> > > >>> > > At org.apache.ivy.util.url.BasicURLHandler.download(URL src, File >>> > > dest, CopyProgressListener l) >>> > > I added >>> > > >>> > > dest.setLastModified(srcConn.getLastModified()); >>> > > >>> > > How is it possible to add an attribute "timestamp" to the >>> > > "dependencies" xml tag ? See below, a sample: >>> > > >>> > > >>> > > >>> > > >>> > > >>> > > >>> > > >>> > > >>> > > >>> > > >>> > > It can have 2 values "remote" or "current", whereas "remote" set >>> the >>> > > last modified attribute, as the remote file is. The "current" means the >>> > > current Ivy behavior. >>> > > >>> > > How can I read the timestamp value, at BasicURLHandler class ? >>> > > >>> > > This is the thread, with more explanation about this requested >>> > > behavior >>> > > >>> > >>> http://www.nabble.com/How-to-download-files-from-ivyrepo-with-the-same-last-modified-date---td17515745.html >>> > > >>> > > I plan to submit it as an enhancement to the Ivy issue tracking. >>> > > >>> > > Thanks >>> > > >>> > > Claudio Miranda >>> > > >>> > >>> > >>> > ----- >>> > Claudio Miranda >>> > http://weblogs.java.net/blog/claudio >>> > http://www.claudius.com.br/blog >>> > -- >>> > View this message in context: >>> > >>> http://www.nabble.com/-Ivy--How-to-add-a-new-option-to-ivy-settings-tp17526130p17527290.html >>> > Sent from the Ant - Dev mailing list archive at Nabble.com. >>> > >>> > >>> > --------------------------------------------------------------------- >>> > To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org >>> > For additional commands, e-mail: dev-help@ant.apache.org >>> > >>> > >>> >>> >>> -- >>> Xavier Hanin - Independent Java Consultant >>> http://xhab.blogspot.com/ >>> http://ant.apache.org/ivy/ >>> http://www.xoocode.org/ >>> >>> >>> >>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org >>> For additional commands, e-mail: dev-help@ant.apache.org >>> >>> >> >> >> -- >> Xavier Hanin - Independent Java Consultant >> http://xhab.blogspot.com/ >> http://ant.apache.org/ivy/ >> http://www.xoocode.org/ >> > > > > -- > Gilles Scokart > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org > For additional commands, e-mail: dev-help@ant.apache.org > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org > For additional commands, e-mail: dev-help@ant.apache.org > > -- Gilles Scokart --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org For additional commands, e-mail: dev-help@ant.apache.org