01: /*
02: * ChainBuilder ESB
03: * Visual Enterprise Integration
04: *
05: * Copyright (C) 2007 Bostech Corporation
06: *
07: * This program is free software; you can redistribute it and/or modify it
08: * under the terms of the GNU General Public License as published by the
09: * Free Software Foundation; either version 2 of the License, or (at your option)
10: * any later version.
11: *
12: * This program is distributed in the hope that it will be useful,
13: * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14: * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15: * for more details.
16: *
17: * You should have received a copy of the GNU General Public License along with
18: * this program; if not, write to the Free Software Foundation, Inc.,
19: * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20: *
21: *
22: * $Id: IDOMBuilder.java 9709 2007-10-23 19:52:09Z mpreston $
23: */
24: package com.bostechcorp.cbesb.runtime.component.http.marshallers.axiom;
25:
26: import java.util.HashMap;
27:
28: import javax.activation.DataHandler;
29:
30: import org.apache.axiom.om.OMElement;
31: import org.w3c.dom.Document;
32: import org.w3c.dom.Element;
33:
34: /**
35: * Used by Soap marshallers to convert from the Axiom OM model into org.w3c.dom model
36: * Also retrieves any attachments from the soap message to be included in the
37: * NormalizedMessage
38: */
39: public interface IDOMBuilder {
40:
41: /**
42: * Converts the Axiom OM tree into DOM tree returning the root Element
43: * @param omRoot OMElement root of message
44: * @param attachments attachment map from soap message context
45: * @param useMTOM Set to true if MTOM messages will be processed
46: * @param useSwA Set to true if SwA message will be processed
47: * @return org.w3c.dom.Element root of message
48: */
49: public Element getElement(OMElement omRoot,
50: HashMap<String, DataHandler> attachments, boolean useMTOM,
51: boolean useSwA);
52:
53: /**
54: * Converts the Axiom OM tree into DOM tree returning the Document
55: * @param omRoot OMElement root of message
56: * @param attachments attachment map from soap message context
57: * @param useMTOM Set to true if MTOM messages will be processed
58: * @param useSwA Set to true if SwA message will be processed
59: * @return org.w3c.dom.Document containing message
60: */
61: public Document getDocument(OMElement omRoot,
62: HashMap<String, DataHandler> attachments, boolean useMTOM,
63: boolean useSwA);
64:
65: /**
66: * After calling getElement or getDocument, this method may be called to retreive
67: * any attachments that were included in the soap request either by SwA or MTOM.
68: * @return
69: */
70: public HashMap<String, DataHandler> getOutputAttachments();
71:
72: }
|