static {
   IContentTypeManager contentTypeManager = Platform.getContentTypeManager();
   if (contentTypeManager != null) {
     contentTypeManager.addContentTypeChangeListener(
         new IContentTypeManager.IContentTypeChangeListener() {
           public void contentTypeChanged(ContentTypeChangeEvent event) {
             // we can be more specific here, but content types change so rarely, that
             // I am not concerned about being overly eager to invalidate the cache
             GROOVY_FILE_NAMES = null;
             GROOVY_LIKE_EXTENSIONS = null;
             JAVA_LIKE_BUT_NOT_GROOVY_LIKE_EXTENSIONS = null;
           }
         });
   }
 }