code: public void onChangeMode(IndexerIoMode mode)
     {
        if (mode == IndexerIoMode.READ_WRITE)
        {
           // Now is read-write. Index list is actual and shouldn't be refreshed.
           // Remove listener to avoid asserting if ioMode is RO on each cache event 
           cache.removeListener(this);
           // re-read from FS current actual list.
           try
           {
              if (!multiIndex.isStopped())
              {
                 super.read();
              }
           }
           catch (IOException e)
           {
              LOG.error("Cannot read the list of index names", e);
           }
        }
        else
        {
           // Currently READ_ONLY is set, so new lists should be fired to multiIndex.
           cache.addListener(this);
        }
     }
docs: {@inheritDoc}