View Javadoc

1   /*
2    * Copyright 2005-2010 the original author or authors.
3    *
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    *      http://www.apache.org/licenses/LICENSE-2.0
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  
17  package org.springframework.ws.soap.axiom;
18  
19  import javax.xml.transform.sax.SAXResult;
20  
21  import org.apache.axiom.om.OMContainer;
22  import org.apache.axiom.om.OMFactory;
23  import org.xml.sax.ContentHandler;
24  import org.xml.sax.ext.LexicalHandler;
25  
26  /**
27   * Specific TrAX {@link javax.xml.transform.Result} that adds the resulting AXIOM OMElement to a specified parent
28   * element when <code>endDocument</code> is called.
29   *
30   * @author Arjen Poutsma
31   * @see AxiomHandler
32   * @since 1.5.0
33   */
34  class AxiomResult extends SAXResult {
35  
36      AxiomResult(OMContainer container, OMFactory factory) {
37          AxiomHandler handler = new AxiomHandler(container, factory);
38          super.setHandler(handler);
39          super.setLexicalHandler(handler);
40      }
41  
42      /**
43       * Throws a <code>UnsupportedOperationException</code>.
44       *
45       * @throws UnsupportedOperationException always
46       */
47      @Override
48      public void setHandler(ContentHandler handler) {
49          throw new UnsupportedOperationException("setHandler is not supported");
50      }
51  
52      /**
53       * Throws a <code>UnsupportedOperationException</code>.
54       *
55       * @throws UnsupportedOperationException always
56       */
57      @Override
58      public void setLexicalHandler(LexicalHandler handler) {
59          throw new UnsupportedOperationException("setLexicalHandler is not supported");
60      }
61  }