logo       

RE: ISVNClientAdapter limitations (getCopy, doExport): msg#00073

version-control.subversion.subclipse.devel

Subject: RE: ISVNClientAdapter limitations (getCopy, doExport)

FYI, after getting in touch with the folks at JavaSVN, they said I can get the copy URL from the log messages.
 
I tried this via the following code using svnClientAdapter:
 
    ISVNLogMessage[] messages = ISVNClientAdapter.getLogMessages(destUrl, ...)
    ISVNLogMessageChangePath changePath = messages[i];
    String srcUrl = changePath.getCopySrcPath();
 
And this works.
 
According to JavaSVN, the methods on SVNStatus and SVNInfo are only useful if you have copied a local file ('svn cp') but have not commited it yet... strange.


From: Martin Letenay [mailto:mle@xxxxxxxxxxxxxx]
Sent: Thursday, November 30, 2006 5:01 AM
To: dev@xxxxxxxxxxxxxxxxxxxx
Cc: Cain, Tom
Subject: RE: [Subclipse-dev] ISVNClientAdapter limitations (getCopy, doExport)

Well,

 

The doExport does not support non-recursive flag simply because nobody needed that so far.

(svnClientAdapter features are implemented mostly as requirements from subclipse or svnAnt)

So the answer is no, there’s no particular reason why it’s not there and yes, it can be added there.

 

Regarding the copyUrl() I don’t know what’s exactly the scenario you’re testing, I just can say the the getCopyUrl() is indeed present (in some cases).

E.g. it’s actively used in the annotate() method.

(when the copy(file, file) method is used.)

 The copy(url, url) does not seem to be testested, so it might be broken, but it’s unlikely that svnClientAdapter is the fault, there’s not much we’re doing there.

 

Martin

 

From: Cain, Tom [mailto:tcain@xxxxxxxxxxx]
Sent: Wednesday, November 29, 2006 7:23 PM
To: dev@xxxxxxxxxxxxxxxxxxxx
Subject: [Subclipse-dev] ISVNClientAdapter limitations (getCopy, doExport)

 

Hello,
I've found a couple of limitations to the ISVNClientAdapter interface, and wanted to get feedback on these to see if they are indeed limitations, if they are known, and if fixes are in the near future.

First, neither of the ISVNInfo.getCopyUrl() and ISVNInfo.getCopyRev() methods seem to work. The first always returns null, and the second always returns 0. I'm assuming the following code should work:

        SVNUrl srcUrl = …
        SVNUrl destUrl = …
        SVNRevision srcRevision = ...

        adapter.copy(srcUrl, destUrl, "…", srcRevision);
       
        ISVNInfo destInfo = adapter.getInfo(destUrl);
        SVNUrl expectedSrcUrl = destInfo.getCopyUrl();
        boolean copied = expectedSrcUrl.equals(srcUrl); // this should return true

Instead, this throws a NullPointerException because "expectedSrcUrl" is null.

Second, the ISVNClientAdapter.doExport(…) does not support a non-recursive export. The JavaSVN API supports this, is there a reason ISVNClientAdapter doesn't?

Thanks,
Tom

<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise