001: /*
002: * BEGIN_HEADER - DO NOT EDIT
003: *
004: * The contents of this file are subject to the terms
005: * of the Common Development and Distribution License
006: * (the "License"). You may not use this file except
007: * in compliance with the License.
008: *
009: * You can obtain a copy of the license at
010: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
011: * See the License for the specific language governing
012: * permissions and limitations under the License.
013: *
014: * When distributing Covered Code, include this CDDL
015: * HEADER in each file and include the License file at
016: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
017: * If applicable add the following below this CDDL HEADER,
018: * with the fields enclosed by brackets "[]" replaced with
019: * your own identifying information: Portions Copyright
020: * [year] [name of copyright owner]
021: */
022:
023: /*
024: * @(#)BindingOperation.java
025: * Copyright 2004-2007 Sun Microsystems, Inc. All Rights Reserved.
026: *
027: * END_HEADER - DO NOT EDIT
028: */
029: package com.sun.jbi.wsdl2;
030:
031: import javax.xml.namespace.QName;
032:
033: /**
034: * API for WSDL 2.0 Binding Operation Component.
035: *
036: * @author ApiGen AX.00
037: */
038: public interface BindingOperation extends ExtensibleDocumentedComponent {
039: /**
040: * Get qualified name of Interface Operation being bound.
041: *
042: * @return Qualified name of Interface Operation being bound
043: */
044: QName getInterfaceOperation();
045:
046: /**
047: * Set qualified name of Interface Operation being bound.
048: *
049: * @param theInterfaceOperation Qualified name of Interface Operation
050: * being bound
051: */
052: void setInterfaceOperation(QName theInterfaceOperation);
053:
054: /**
055: * Get the number of BindingMessageReference items in inputs.
056: *
057: * @return The number of BindingMessageReference items in inputs
058: */
059: int getInputsLength();
060:
061: /**
062: * Get input binding message references by indexed position.
063: *
064: * @param index Indexed position value 0..length-1
065: * @return Input binding message references at given <code>index</code>
066: * position.
067: */
068: BindingMessageReference getInput(int index);
069:
070: /**
071: * Set input binding message references by indexed position.
072: *
073: * @param index Indexed position value (0..length-1) of the item to set
074: * @param theInput Item to add at position <code>index</code>.
075: */
076: void setInput(int index, BindingMessageReference theInput);
077:
078: /**
079: * Append an item to input binding message references.
080: *
081: * @param theInput Item to append to inputs
082: */
083: void appendInput(BindingMessageReference theInput);
084:
085: /**
086: * Remove input binding message references by index position.
087: *
088: * @param index The index position of the input to remove
089: * @return The BindingMessageReference removed, if any.
090: */
091: BindingMessageReference removeInput(int index);
092:
093: /**
094: * Get the number of BindingMessageReference items in outputs.
095: *
096: * @return The number of BindingMessageReference items in outputs
097: */
098: int getOutputsLength();
099:
100: /**
101: * Get output binding message references by indexed position.
102: *
103: * @param index Indexed position value 0..length-1
104: * @return Output binding message references at given <code>index</code>
105: * position.
106: */
107: BindingMessageReference getOutput(int index);
108:
109: /**
110: * Set output binding message references by indexed position.
111: *
112: * @param index Indexed position value (0..length-1) of the item to set
113: * @param theOutput Item to add at position <code>index</code>.
114: */
115: void setOutput(int index, BindingMessageReference theOutput);
116:
117: /**
118: * Append an item to output binding message references.
119: *
120: * @param theOutput Item to append to outputs
121: */
122: void appendOutput(BindingMessageReference theOutput);
123:
124: /**
125: * Remove output binding message references by index position.
126: *
127: * @param index The index position of the output to remove
128: * @return The BindingMessageReference removed, if any.
129: */
130: BindingMessageReference removeOutput(int index);
131:
132: /**
133: * Get the target namespace of this operation.
134: *
135: * @return Target namespace of this operation
136: */
137: String getTargetNamespace();
138:
139: /**
140: * Create a new message reference for this operation, appending it to
141: * this operation's input list.
142: *
143: * @param messageLabel NC role name in the {message exchange pattern} of
144: * the message for which binding details are provided
145: * @return The newly created input message reference, appended to this
146: * operation.
147: */
148: BindingMessageReference addNewInput(String messageLabel);
149:
150: /**
151: * Create a new message reference for this operation, appending it this
152: * operation's output list.
153: *
154: * @param messageLabel NC name of the message for which binding details
155: * are provided.
156: * @return The newly created output message reference, appended to this
157: * operation.
158: */
159: BindingMessageReference addNewOutput(String messageLabel);
160:
161: }
162:
163: // End-of-file: BindingOperation.java
|