Isn't it more standard to use getEngine() instead of using the maybiInitialize...
return getEngine().contains ...

Also I would make engine private instead of protected so as any plugin using it is changed to use getEngine()