public void setRevisionPropertyValue(long revision, String propertyName, String propertyValue) throws SVNException {
assertValidRevision(revision);
StringBuffer request = DAVProppatchHandler.generatePropertyRequest(null, propertyName, propertyValue);
try {
openConnection();
DAVBaselineInfo info = DAVUtil.getBaselineInfo(myConnection, this, SVNEncodingUtil.uriEncode(getLocation().getPath()), revision, false, false, null);
String path = SVNPathUtil.append(info.baselineBase, info.baselinePath);
path = info.baseline;
try {
myConnection.doProppatch(null, path, request, null, null);
} catch (SVNException e) {
SVNErrorMessage err = SVNErrorMessage.create(SVNErrorCode.RA_DAV_REQUEST_FAILED, "DAV request failed; it's possible that the repository's " +
"pre-rev-propchange hook either failed or is non-existent");
SVNErrorManager.error(err, e.getErrorMessage());
}
} finally {
closeConnection();
}
}