// use same binding id as for application endpoint
// also, to workaround the problem that it may not be possible to determine
// the soap version depending on the bindingId, speciffy the soap version
// explicitly
if (null != applicationEndpoint) {
SoapBindingInfo sbi = (SoapBindingInfo)applicationEndpoint.getEndpointInfo().getBinding();
SoapVersion sv = sbi.getSoapVersion();
String bindingId = sbi.getBindingId();
SoapBindingInfo bi = new SoapBindingInfo(si, bindingId, sv);
bi.setName(BINDING_NAME);
BindingOperationInfo boi = null;
boi = bi.buildOperation(RMConstants.getCreateSequenceOperationName(), RMConstants
.getCreateSequenceOperationName().getLocalPart(), null);
addAction(boi,
RMConstants.getCreateSequenceAction(),
RMConstants.getCreateSequenceResponseAction());
bi.addOperation(boi);
boi = bi.buildOperation(RMConstants.getTerminateSequenceOperationName(), RMConstants
.getTerminateSequenceOperationName().getLocalPart(), null);
addAction(boi, RMConstants.getTerminateSequenceAction());
bi.addOperation(boi);
boi = bi.buildOperation(RMConstants.getSequenceAckOperationName(), null, null);
addAction(boi, RMConstants.getSequenceAckAction());
bi.addOperation(boi);
boi = bi.buildOperation(RMConstants.getLastMessageOperationName(), null, null);
addAction(boi, RMConstants.getLastMessageAction());
bi.addOperation(boi);
boi = bi.buildOperation(RMConstants.getAckRequestedOperationName(), null, null);
addAction(boi, RMConstants.getAckRequestedAction());
bi.addOperation(boi);
boi = bi.buildOperation(RMConstants.getCreateSequenceOnewayOperationName(), RMConstants
.getCreateSequenceOperationName().getLocalPart(), null);
addAction(boi, RMConstants.getCreateSequenceAction());
bi.addOperation(boi);
boi = bi.buildOperation(RMConstants.getCreateSequenceResponseOnewayOperationName(), RMConstants
.getCreateSequenceResponseOperationName().getLocalPart(), null);
addAction(boi, RMConstants.getCreateSequenceResponseAction());
bi.addOperation(boi);
si.addBinding(bi);
}
// TODO: BindingFaultInfo (SequenceFault)