code: public void start(StartMode mode) throws Exception
      {
          Preconditions.checkState(state.compareAndSet(State.LATENT, State.STARTED), "already started");
          mode = Preconditions.checkNotNull(mode, "mode cannot be null");
  
          client.getConnectionStateListenable().addListener(connectionStateListener);
  
          switch ( mode )
          {
              case NORMAL:
              {
                  offerOperation(new RefreshOperation(this, RefreshMode.STANDARD));
                  break;
              }
  
              case BUILD_INITIAL_CACHE:
              {
                  rebuild();
                  break;
              }
  
              case POST_INITIALIZED_EVENT:
              {
                  initialSet.set(Maps.<String, ChildData>newConcurrentMap());
                  offerOperation(new RefreshOperation(this, RefreshMode.POST_INITIALIZED));
                  break;
              }
          }
      }
docs: Start the cache. The cache is not started automatically. You must call this method.
  
  @param mode Method for priming the cache
  @throws Exception errors