mirror of https://github.com/v2ray/v2ray-core
				
				
				
			more comments
							parent
							
								
									a84c03d5db
								
							
						
					
					
						commit
						9071b3ea10
					
				| 
						 | 
				
			
			@ -5,6 +5,8 @@ import (
 | 
			
		|||
	"github.com/v2ray/v2ray-core/transport/ray"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// PacketDispatcher dispatch a packet and possibly further network payload to
 | 
			
		||||
// its destination.
 | 
			
		||||
type PacketDispatcher interface {
 | 
			
		||||
	DispatchToOutbound(packet v2net.Packet) ray.InboundRay
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -76,18 +76,22 @@ func SetLogLevel(level LogLevel) {
 | 
			
		|||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Debug outputs a debug log with given format and optional arguments.
 | 
			
		||||
func Debug(format string, v ...interface{}) {
 | 
			
		||||
	debugLogger.WriteLog("[Debug]", format, v...)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Info outputs an info log with given format and optional arguments.
 | 
			
		||||
func Info(format string, v ...interface{}) {
 | 
			
		||||
	infoLogger.WriteLog("[Info]", format, v...)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Warning outputs a warning log with given format and optional arguments.
 | 
			
		||||
func Warning(format string, v ...interface{}) {
 | 
			
		||||
	warningLogger.WriteLog("[Warning]", format, v...)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Error outputs an error log with given format and optional arguments.
 | 
			
		||||
func Error(format string, v ...interface{}) {
 | 
			
		||||
	errorLogger.WriteLog("[Error]", format, v...)
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -4,10 +4,15 @@ import (
 | 
			
		|||
	"github.com/v2ray/v2ray-core/app"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// A InboundConnectionHandlerFactory creates InboundConnectionHandler on demand.
 | 
			
		||||
type InboundConnectionHandlerFactory interface {
 | 
			
		||||
	// Create creates a new InboundConnectionHandler with given configuration.
 | 
			
		||||
	Create(dispatch app.PacketDispatcher, config interface{}) (InboundConnectionHandler, error)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// A InboundConnectionHandler handles inbound network connections to V2Ray.
 | 
			
		||||
type InboundConnectionHandler interface {
 | 
			
		||||
	// Listen starts a InboundConnectionHandler by listen on a specific port. This method is called
 | 
			
		||||
	// exactly once during runtime.
 | 
			
		||||
	Listen(port uint16) error
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -5,10 +5,14 @@ import (
 | 
			
		|||
	"github.com/v2ray/v2ray-core/transport/ray"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// An OutboundConnectionHandlerFactory creates OutboundConnectionHandler on demand.
 | 
			
		||||
type OutboundConnectionHandlerFactory interface {
 | 
			
		||||
	// Create creates a new OutboundConnectionHandler with given config.
 | 
			
		||||
	Create(config interface{}) (OutboundConnectionHandler, error)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// An OutboundConnectionHandler handles outbound network connection for V2Ray.
 | 
			
		||||
type OutboundConnectionHandler interface {
 | 
			
		||||
	// Dispatch sends one or more Packets to its destination.
 | 
			
		||||
	Dispatch(firstPacket v2net.Packet, ray ray.OutboundRay) error
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -8,6 +8,7 @@ const (
 | 
			
		|||
	bufferSize = 16
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// NewRay creates a new Ray for direct traffic transport.
 | 
			
		||||
func NewRay() Ray {
 | 
			
		||||
	return &directRay{
 | 
			
		||||
		Input:  make(chan *alloc.Buffer, bufferSize),
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue