Programmers information about KIO::ksvn

Note

You may skip this if not interested in KIO programming.

KIO::ksvn::special knows the following operations, these are made almost equal in call to the current existing in KIO from kdesdk so, for instance, kdevelop may use it if kdesdk isn't installed but uses kdesvn::KIO::svn.

Commandlist

Table 3.1. Command overview for KIO::ksvn::special

Name/commandNumeric idParameter listImplemented in 0.11.x?
Checkout1

KURL repository, KURL target, int revnumber, QString revkind

The target will NOT be modified, e.g., but the content will be checked out without creating a subfolder! e.g., the source may be http://server/repos/project/trunk, target /home/user/proj/ then the contents of trunk will copied into /home/user/proj/ not /home/user/proj/trunk/!

Yes
Update2

KURL url,int revnum, QString revstring

If revnum < 0 the revstring is parsed. Format of revstring is described in Appendix.

Yes
Commit3

KURL::List urls

urls a list of local urls to commit. Will ask for log.

Yes
Log4

int startrevnumber,QString startrevstring,int endrevnumber,QString endrevstring,KURL::List

Use this with care - this may produce a lot of data.

Yes
Import5KURL targetrepository, KURL sourcepathYes
Add6KURLYes
Del7KURL::ListYes
Revert8

KURL::List

Revert in KIO is always non-recursive, no questions (calling app must do it itself)

Yes
Status9

KURL item,bool checkRepos, bool recurse

item - the item check info about, checkRepos - check if there are newer versions in repository, recurse - check recursive or not.

Yes
Mkdir10KURL::ListYes
Resolve11KURL, bool recursiveYes
Switch12KURL working_copy_path,KURL new_repository_url,bool recursive,int revnumber, QString revkindYes
Diff13

URL uri1, KURL uri2, int r1, QString rstring1, int r2, QString rstring 2, bool recursive

For difference between repository file:/// and working copy setup working copy urls without a protocol!

Yes

Return values

Return values may given via metadata, see apidoc for details.

Table 3.2. Content of metadata

KeyPossible value
pathPath of the item action was made on, eg. given url
actionNumeric action type
kindkind of item (mostly dir or file)
mime_tSubversion mimetype of item
contentState of content (subversion value)
propState of properties (subversion value)
revResulting revision or revision worked on
stringInternal defined human readable message.
loggedactionSubversion defined action string on item (A,M,D)
loggedcopyfrompathIf copied from which path? (may empty)
loggedcopyfromrevisionIf copied at which revision? (may < 0)
loggedpathOn which single path the entries logged action and so on are set. (path is set to the calling url)
diffresulta line of difference output