|  | @@ -10,6 +10,7 @@ import (
 | 
											
												
													
														|  |  	"strings"
 |  |  	"strings"
 | 
											
												
													
														|  |  	"sync"
 |  |  	"sync"
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +	"github.com/v2ray/v2ray-core/app"
 | 
											
												
													
														|  |  	"github.com/v2ray/v2ray-core/app/dispatcher"
 |  |  	"github.com/v2ray/v2ray-core/app/dispatcher"
 | 
											
												
													
														|  |  	"github.com/v2ray/v2ray-core/common/alloc"
 |  |  	"github.com/v2ray/v2ray-core/common/alloc"
 | 
											
												
													
														|  |  	v2io "github.com/v2ray/v2ray-core/common/io"
 |  |  	v2io "github.com/v2ray/v2ray-core/common/io"
 | 
											
										
											
												
													
														|  | @@ -17,6 +18,7 @@ import (
 | 
											
												
													
														|  |  	v2net "github.com/v2ray/v2ray-core/common/net"
 |  |  	v2net "github.com/v2ray/v2ray-core/common/net"
 | 
											
												
													
														|  |  	"github.com/v2ray/v2ray-core/common/serial"
 |  |  	"github.com/v2ray/v2ray-core/common/serial"
 | 
											
												
													
														|  |  	"github.com/v2ray/v2ray-core/proxy"
 |  |  	"github.com/v2ray/v2ray-core/proxy"
 | 
											
												
													
														|  | 
 |  | +	"github.com/v2ray/v2ray-core/proxy/internal"
 | 
											
												
													
														|  |  	"github.com/v2ray/v2ray-core/transport/hub"
 |  |  	"github.com/v2ray/v2ray-core/transport/hub"
 | 
											
												
													
														|  |  	"github.com/v2ray/v2ray-core/transport/ray"
 |  |  	"github.com/v2ray/v2ray-core/transport/ray"
 | 
											
												
													
														|  |  )
 |  |  )
 | 
											
										
											
												
													
														|  | @@ -252,3 +254,15 @@ func (this *HttpProxyServer) handlePlainHTTP(request *http.Request, dest v2net.D
 | 
											
												
													
														|  |  	}()
 |  |  	}()
 | 
											
												
													
														|  |  	wg.Wait()
 |  |  	wg.Wait()
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +func init() {
 | 
											
												
													
														|  | 
 |  | +	internal.MustRegisterInboundHandlerCreator("http",
 | 
											
												
													
														|  | 
 |  | +		func(space app.Space, rawConfig interface{}) (proxy.InboundHandler, error) {
 | 
											
												
													
														|  | 
 |  | +			if !space.HasApp(dispatcher.APP_ID) {
 | 
											
												
													
														|  | 
 |  | +				return nil, internal.ErrorBadConfiguration
 | 
											
												
													
														|  | 
 |  | +			}
 | 
											
												
													
														|  | 
 |  | +			return NewHttpProxyServer(
 | 
											
												
													
														|  | 
 |  | +				rawConfig.(*Config),
 | 
											
												
													
														|  | 
 |  | +				space.GetApp(dispatcher.APP_ID).(dispatcher.PacketDispatcher)), nil
 | 
											
												
													
														|  | 
 |  | +		})
 | 
											
												
													
														|  | 
 |  | +}
 |