code: private synchronized void refreshFlow()
     {
        try
        {
           initialize();
        }
        catch (Exception e)
        {
           throw new IllegalStateException("Error while initializing wizard", e);
        }
        int currentFlowPointer = this.flowPointer;
        try
        {
           this.flowPointer = 0;
           while (canMoveToNextStep())
           {
              try
              {
                 next().initialize();
              }
              catch (Exception e)
              {
                 throw new IllegalStateException("Error while moving to the next wizard step", e);
              }
           }
           cleanSubsequentStalePages();
        }
        finally
        {
           this.flowPointer = currentFlowPointer;
        }
     }
docs: Refreshes the current flow so it's possible to eagerly fetch all the steps