View Javadoc

1   package com.bradmcevoy.http.values;
2   
3   import com.bradmcevoy.http.LockInfo;
4   import com.bradmcevoy.http.LockToken;
5   import com.bradmcevoy.http.XmlWriter;
6   import com.bradmcevoy.http.XmlWriter.Element;
7   import com.bradmcevoy.http.webdav.LockWriterHelper;
8   import java.util.Map;
9   
10  public class LockTokenValueWriter implements ValueWriter {
11  
12      private LockWriterHelper lockWriterHelper = new LockWriterHelper();
13  
14      public LockWriterHelper getLockWriterHelper() {
15          return lockWriterHelper;
16      }
17  
18      public void setLockWriterHelper( LockWriterHelper lockWriterHelper ) {
19          this.lockWriterHelper = lockWriterHelper;
20      }
21  
22      public boolean supports( String nsUri, String localName, Class c ) {
23          return LockToken.class.isAssignableFrom( c );
24      }
25  
26      public void writeValue( XmlWriter writer, String nsUri, String prefix, String localName, Object val, String href, Map<String, String> nsPrefixes ) {
27          LockToken token = (LockToken) val;
28          Element lockentry = writer.begin( "D:lockdiscovery" ).open();
29          if( token != null ) {
30              LockInfo info = token.info;
31              lockWriterHelper.appendType( writer, info.type );
32              lockWriterHelper.appendScope( writer, info.scope );
33              lockWriterHelper.appendDepth( writer, info.depth );
34              lockWriterHelper.appendOwner( writer, info.lockedByUser );
35              lockWriterHelper.appendTimeout( writer, token.timeout.getSeconds() );
36              lockWriterHelper.appendTokenId( writer, token.tokenId );
37              lockWriterHelper.appendRoot( writer, href );
38          }
39          lockentry.close();
40      }
41  
42      public Object parse( String namespaceURI, String localPart, String value ) {
43          throw new UnsupportedOperationException( "Not supported yet." );
44      }
45  }