private static ITransportFactory CreateTransportFactory(Uri location)
{
string scheme = location.Scheme;
if(string.IsNullOrEmpty(scheme))
{
throw new NMSConnectionException(String.Format("Transport scheme invalid: [{0}]", location.ToString()));
}
ITransportFactory factory = null;
try
{
factory = NewInstance(scheme.ToLower());
}
catch(NMSConnectionException)
{
throw;
}
catch
{
throw new NMSConnectionException("Error creating transport.");
}
if(null == factory)
{
throw new NMSConnectionException("Unable to create a transport.");
}
return factory;
}