* @param transportProtocol Name of the transport where details are required.
* @return TransportDetails
* @throws Exception on error
*/
public TransportDetails getTransportDetails(String transportProtocol) throws Exception {
TransportService transportService;
TransportDetails details;
if (transportProtocol == null) {
if (log.isDebugEnabled()) {
log.debug("Invalid transport name");
}
throw new Exception("Invalid transport name");
}
// All transport bundles update the TransportStore - with the corresponding transports
// supported by those.
transportService = TransportStore.getInstance().getTransport(transportProtocol);
if (transportService != null) {
details = new TransportDetails();
details.setListenerActive(transportService.isEnabled(true, getAxisConfig()));
details.setSenderActive(transportService.isEnabled(false, getAxisConfig()));
details.setInParameters(transportService.getGlobalTransportParameters(true, getAxisConfig()));
details.setOutParameters(transportService.getGlobalTransportParameters(false, getAxisConfig()));
return details;
} else {
log.warn("Transport service not available for : " + transportProtocol);
return null;
}