1 22 package org.apache.webdav.ant.taskdefs; 23 24 import java.io.IOException ; 25 26 import org.apache.tools.ant.BuildException; 27 import org.apache.tools.ant.Project; 28 import org.apache.webdav.ant.Utils; 29 30 35 public class Unlock extends WebdavTask { 36 private String locktoken = null; 37 38 41 public void execute() throws BuildException { 42 validate(); 43 try { 44 log("Unlocking " + getUrl(), Project.MSG_INFO); 45 Utils.unlockResource( 46 getHttpClient(), 47 getUrl(), 48 this.locktoken 49 ); 50 } 51 catch (IOException e) { 52 throw Utils.makeBuildException("Can't unlock!", e); 53 } 54 } 55 56 protected void validate() throws BuildException 57 { 58 super.validate(); 59 60 if (this.locktoken == null) { 61 throw new BuildException("Required locktoken attribute missing!"); 62 } 63 } 64 65 public void setLocktoken(String token) { 66 this.locktoken = token; 67 if (!this.locktoken.startsWith("opaquelocktoken:")) { 68 throw new BuildException("Invalid locktoken: " + token); 69 } 70 } 71 72 } 73 | Popular Tags |