01: /*
02: * BEGIN_HEADER - DO NOT EDIT
03: *
04: * The contents of this file are subject to the terms
05: * of the Common Development and Distribution License
06: * (the "License"). You may not use this file except
07: * in compliance with the License.
08: *
09: * You can obtain a copy of the license at
10: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
11: * See the License for the specific language governing
12: * permissions and limitations under the License.
13: *
14: * When distributing Covered Code, include this CDDL
15: * HEADER in each file and include the License file at
16: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
17: * If applicable add the following below this CDDL HEADER,
18: * with the fields enclosed by brackets "[]" replaced with
19: * your own identifying information: Portions Copyright
20: * [year] [name of copyright owner]
21: */
22:
23: /*
24: * @(#)MessageDenormalizer.java
25: * Copyright 2004-2007 Sun Microsystems, Inc. All Rights Reserved.
26: *
27: * END_HEADER - DO NOT EDIT
28: */
29: package com.sun.jbi.common.soap;
30:
31: import javax.jbi.messaging.Fault;
32: import javax.jbi.messaging.NormalizedMessage;
33:
34: /**
35: * This object is used by <code>MessageProcessor</code> implementations to
36: * denormalize a JBI NormalizedMessage and convert it into a SOAP Message.
37: * The object maps the Normalized Message's message content to SOAP:Body element in the
38: * SOAP Message. The SOAP:header elements are extracted from a Normalized Message's
39: * message context property "SoapHeader".
40: *
41: * @author Sun Microsystems, Inc.
42: */
43: public interface MessageDenormalizer {
44: /**
45: * Converts a normalized message to a SOAP Message.
46: *
47: * @param normalizedMessage message to be denormalized.
48: * @param operation operation invoked
49: * @param isResponse indicates if a response messages needs to be generated
50: *
51: * @return the SOAP Message.
52: */
53: SOAPWrapper denormalizeMessage(NormalizedMessage normalizedMessage,
54: Operation operation, boolean isResponse);
55:
56: /**
57: * Converts a fault mesage to a SOAP Message using the specified fault code.
58: *
59: * @param faultMessage fault message.
60: *
61: * @return a new SOAPWrapper instance which contains the SOAP fault Message.
62: */
63: SOAPWrapper denormalizeFaultMessage(Fault faultMessage);
64:
65: /**
66: * Converts an exception to a SOAP Message. It uses the Server fault code in the soap
67: * namespace.
68: *
69: * @param exception exception instance
70: *
71: * @return denormalized exception instance.
72: */
73: SOAPWrapper denormalizeMessage(Exception exception);
74:
75: /**
76: * Converts an exception to a SOAP Message. It uses the faultCode passed. The code
77: * expects the faultcode passed to be part of the soap namespace.
78: *
79: * @param exception exception instance
80: * @param faultCode fault code
81: *
82: * @return denormalized exception instance.
83: */
84: SOAPWrapper denormalizeMessage(Exception exception, String faultCode);
85: }
|