1 19 package org.openharmonise.webdav.client.methods.dasl; 20 21 import javax.xml.parsers.DocumentBuilderFactory ; 22 import javax.xml.parsers.ParserConfigurationException ; 23 24 import org.openharmonise.commons.xml.*; 25 import org.openharmonise.commons.xml.namespace.*; 26 import org.openharmonise.webdav.client.*; 27 import org.w3c.dom.Document ; 28 import org.w3c.dom.Element ; 29 30 31 38 public class Search extends AbstractWebDAVMethod { 39 40 43 public static String METHOD_NAME = "SEARCH"; 44 45 48 private Element m_elSearch = null; 49 50 55 public Search(String sURL) { 56 super(METHOD_NAME, sURL); 57 } 58 59 64 public void setSearchXML(Element elSearch) { 65 this.m_elSearch = elSearch; 66 } 67 68 public byte[] getData() { 69 70 DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); 71 factory.setNamespaceAware(true); 72 Document xmlDoc = null; 73 try { 74 xmlDoc = factory.newDocumentBuilder().newDocument(); 75 } catch (ParserConfigurationException e) { 76 e.printStackTrace(); 77 } 78 79 Element elSearchRequest = xmlDoc.createElementNS( Search.WEBDAV_NAMESPACE , "searchrequest"); 80 xmlDoc.appendChild(elSearchRequest); 81 82 if( this.m_elSearch!=null ) { 83 elSearchRequest.appendChild( xmlDoc.importNode(this.m_elSearch, true) ); 84 } 85 86 XMLPrettyPrint printer = new XMLPrettyPrint(); 87 printer.setNamespaceAware(true); 88 89 String sXML = null; 90 try { 91 sXML = printer.printNode(xmlDoc.getDocumentElement()); 92 } catch (NamespaceClashException e1) { 93 e1.printStackTrace(); 94 } 95 96 return sXML.getBytes(); 97 } 98 99 } 100 | Popular Tags |