docs: public boolean isSkipped(Plugin plugin) {
          PluginStats pluginStats = mapPluginStats.get(plugin.getId());
  
          if (pluginStats != null && pluginStats.isSkipped()) {
              return true;
          }
  
          if (plugin.getTimeFinished() == null && stopReason != null) {
              this.pluginSkipped(plugin, stopReason);
              return true;
          
          } else if (this.scannerParam.getMaxRuleDurationInMins() > 0 && plugin.getTimeStarted() != null) {
          	long endtime = System.currentTimeMillis();
          	if (plugin.getTimeFinished() != null) {
          		endtime = plugin.getTimeFinished().getTime();
          	}
          	if (endtime - plugin.getTimeStarted().getTime() > 
          			TimeUnit.MINUTES.toMillis(this.scannerParam.getMaxRuleDurationInMins())) {
          	    this.pluginSkipped(plugin,
          	            Constant.messages.getString("ascan.progress.label.skipped.reason.maxRule"));
              	return true;
              }
          }
          return false;
      }