View Javadoc
1   /*
2    * Copyright (C) 2013 4th Line GmbH, Switzerland
3    *
4    * The contents of this file are subject to the terms of either the GNU
5    * Lesser General Public License Version 2 or later ("LGPL") or the
6    * Common Development and Distribution License Version 1 or later
7    * ("CDDL") (collectively, the "License"). You may not use this file
8    * except in compliance with the License. See LICENSE.txt for more
9    * information.
10   *
11   * This program is distributed in the hope that it will be useful,
12   * but WITHOUT ANY WARRANTY; without even the implied warranty of
13   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14   */
15  
16  package org.fourthline.cling.support.messagebox.parser;
17  
18  import org.seamless.xml.DOM;
19  import org.w3c.dom.Document;
20  
21  import javax.xml.xpath.XPath;
22  
23  /**
24   * @author Christian Bauer
25   */
26  public class MessageDOM extends DOM {
27  
28      public static final String NAMESPACE_URI = "urn:samsung-com:messagebox-1-0";
29  
30      public MessageDOM(Document dom) {
31          super(dom);
32      }
33  
34      @Override
35      public String getRootElementNamespace() {
36          return NAMESPACE_URI;
37      }
38  
39      @Override
40      public MessageElement getRoot(XPath xPath) {
41          return new MessageElement(xPath, getW3CDocument().getDocumentElement());
42      }
43  
44      @Override
45      public MessageDOM copy() {
46          return new MessageDOM((Document) getW3CDocument().cloneNode(true));
47      }
48  
49      public MessageElement createRoot(XPath xpath, String element) {
50          super.createRoot(element);
51          return getRoot(xpath);
52      }
53  
54  }