Your handler will work with preconditions, you don't have to do anything special in your code to support them, IIS does it automagically.
Basically, preCondition="integratedMode" just means that if your app pool isn't running in integrated mode (i.e. is in classic mode), this handler won't execute because IIS will ignore it. This would be a good thing for a handler that was taking advantage of events in the integrated pipeline that don't exist in classic mode.
There are other preconditions for 32 vs 64 bit, runtime versions and manged vs non-manged code.
For modules there is one gotcha. If you have <modules runAllManagedModulesForAllRequests="true" /> in your web.config, all of your module preconditions will be ignored and every module will run for every request. This could be good or bad. If you had precondition="managedHandler", your module would only run if the request would be handled by managed code, but would be skipped for static content. Running all managed modules for all requests will pump ALL requests through every module.
Hopefully that helps.