docs: @Override
  	public void start() {
  		if (state.start()){
  			try{
  				doStart();
  				state.finishStarting();
  			}catch(Exception e){
  				state.failStarting();
  				logger.warn("Failed to start {}", this.getClass().getName(), e);
  			}
  		}
  
  	}