|  | @@ -5,10 +5,14 @@ import (
 | 
	
		
			
				|  |  |  )
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  const (
 | 
	
		
			
				|  |  | +	// TCPNetwork represents the TCP network.
 | 
	
		
			
				|  |  |  	TCPNetwork = Network("tcp")
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +	// UDPNetwork represents the UDP network.
 | 
	
		
			
				|  |  |  	UDPNetwork = Network("udp")
 | 
	
		
			
				|  |  |  )
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +// Network represents a communication network on internet.
 | 
	
		
			
				|  |  |  type Network serial.StringLiteral
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  func (this Network) AsList() *NetworkList {
 | 
	
	
		
			
				|  | @@ -16,8 +20,10 @@ func (this Network) AsList() *NetworkList {
 | 
	
		
			
				|  |  |  	return &list
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +// NetworkList is a list of Networks.
 | 
	
		
			
				|  |  |  type NetworkList []Network
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +// NewNetworkList construsts a NetWorklist from the given StringListeralList.
 | 
	
		
			
				|  |  |  func NewNetworkList(networks serial.StringLiteralList) NetworkList {
 | 
	
		
			
				|  |  |  	list := NetworkList(make([]Network, networks.Len()))
 | 
	
		
			
				|  |  |  	for idx, network := range networks {
 | 
	
	
		
			
				|  | @@ -26,6 +32,7 @@ func NewNetworkList(networks serial.StringLiteralList) NetworkList {
 | 
	
		
			
				|  |  |  	return list
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +// HashNetwork returns true if the given network is in this NetworkList.
 | 
	
		
			
				|  |  |  func (this *NetworkList) HasNetwork(network Network) bool {
 | 
	
		
			
				|  |  |  	for _, value := range *this {
 | 
	
		
			
				|  |  |  		if string(value) == string(network) {
 |