ModuleManager restart

How can I tell when the restart link has been clicked for my tag provider and ensure that the tag provider is actually being restarted.

If you’re talking about your module itself being restarted then you need to override the setup(), startup(), and shutdown() in your module hook to know when you’re being started up or shutdown. A restart is just a shutdown and a startup.