001 /* 002 * Created on 12-Aug-2005 003 */ 004 package org.activemq.transport.https; 005 006 import java.net.MalformedURLException; 007 import java.net.URI; 008 import java.net.URISyntaxException; 009 010 import javax.jms.JMSException; 011 012 import org.activemq.io.WireFormat; 013 import org.activemq.transport.TransportChannel; 014 import org.activemq.transport.http.HttpTransportChannelFactory; 015 import org.activemq.util.JMSExceptionHelper; 016 import org.apache.commons.logging.Log; 017 import org.apache.commons.logging.LogFactory; 018 019 public class HttpsTransportChannelFactory extends HttpTransportChannelFactory { 020 021 private static final Log log = LogFactory.getLog( HttpsTransportChannelFactory.class ); 022 023 public TransportChannel create( WireFormat wireFormat, URI remoteLocation ) throws JMSException { 024 try { 025 return create( wireFormat, remoteLocation, new URI( "https://localhost:0" ) ); 026 } catch ( URISyntaxException e ) { 027 throw JMSExceptionHelper.newJMSException( e.getMessage(), e ); 028 } 029 } 030 031 public TransportChannel create( WireFormat wireFormat, URI remoteLocation, URI localLocation ) throws JMSException { 032 try { 033 HttpsTransportChannel channel = new HttpsTransportChannel( asTextWireFormat( wireFormat ), remoteLocation.toString() ); 034 return populateProperties( channel, remoteLocation ); 035 } catch ( MalformedURLException e ) { 036 throw JMSExceptionHelper.newJMSException( e.getMessage(), e ); 037 } 038 } 039 040 }