mirror of
				https://github.com/caddyserver/caddy.git
				synced 2025-10-31 02:27:19 -04:00 
			
		
		
		
	Add ExtraInfo to EventHook (#1692)
* Update plugins.go * Add extraInfo to eventHook * Add extraInfo to eventHook * Update run.go * Update run.go * Update run.go
This commit is contained in:
		
							parent
							
								
									6b8e40b3fb
								
							
						
					
					
						commit
						cbdd3a4f8e
					
				| @ -101,7 +101,7 @@ func Run() { | ||||
| 	} | ||||
| 
 | ||||
| 	// Executes Startup events | ||||
| 	caddy.EmitEvent(caddy.StartupEvent) | ||||
| 	caddy.EmitEvent(caddy.StartupEvent, nil) | ||||
| 
 | ||||
| 	// Get Caddyfile input | ||||
| 	caddyfileinput, err := caddy.LoadCaddyfile(serverType) | ||||
|  | ||||
| @ -224,7 +224,7 @@ const ( | ||||
| ) | ||||
| 
 | ||||
| // EventHook is a type which holds information about a startup hook plugin. | ||||
| type EventHook func(eventType EventName) error | ||||
| type EventHook func(eventType EventName, eventInfo interface{}) error | ||||
| 
 | ||||
| // RegisterEventHook plugs in hook. All the hooks should register themselves | ||||
| // and they must have a name. | ||||
| @ -241,9 +241,9 @@ func RegisterEventHook(name string, hook EventHook) { | ||||
| // EmitEvent executes the different hooks passing the EventType as an | ||||
| // argument. This is a blocking function. Hook developers should | ||||
| // use 'go' keyword if they don't want to block Caddy. | ||||
| func EmitEvent(event EventName) { | ||||
| func EmitEvent(event EventName, info interface{}) { | ||||
| 	for name, hook := range eventHooks { | ||||
| 		err := hook(event) | ||||
| 		err := hook(event, info) | ||||
| 
 | ||||
| 		if err != nil { | ||||
| 			log.Printf("error on '%s' hook: %v", name, err) | ||||
|  | ||||
| @ -53,7 +53,7 @@ func trapSignalsCrossPlatform() { | ||||
| func executeShutdownCallbacks(signame string) (exitCode int) { | ||||
| 	shutdownCallbacksOnce.Do(func() { | ||||
| 		// execute third-party shutdown hooks | ||||
| 		EmitEvent(ShutdownEvent) | ||||
| 		EmitEvent(ShutdownEvent, signame) | ||||
| 
 | ||||
| 		errs := allShutdownCallbacks() | ||||
| 		if len(errs) > 0 { | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user