mirror of
				https://github.com/openimsdk/open-im-server.git
				synced 2025-11-04 11:22:10 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			24 lines
		
	
	
		
			656 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			656 B
		
	
	
	
		
			Go
		
	
	
	
	
	
package mq
 | 
						|
 | 
						|
type Consumer interface {
 | 
						|
	// RegisterMessageHandler is used to register message handler
 | 
						|
	// any received messages will be passed to handler to process
 | 
						|
	// once the Consumer started, it is forbidden to register handlers.
 | 
						|
	RegisterMessageHandler(topic string, handler MessageHandler)
 | 
						|
 | 
						|
	// Start to consume messages
 | 
						|
	Start() error
 | 
						|
}
 | 
						|
 | 
						|
type MessageHandler interface {
 | 
						|
	// HandleMessage process received messages,
 | 
						|
	// if returned error is nil, the message will be auto committed.
 | 
						|
	HandleMessage(msg *Message) error
 | 
						|
}
 | 
						|
 | 
						|
type MessageHandleFunc func(msg *Message) error
 | 
						|
 | 
						|
func (fn MessageHandleFunc) HandleMessage(msg *Message) error {
 | 
						|
	return fn(msg)
 | 
						|
}
 |