code: public void setCache(RemoteListCache cache) {
  		if (cache instanceof RemoteListCacheImpl) {
  			RemoteListCacheImpl cacheImpl = (RemoteListCacheImpl)cache;
  			if (getLogResult() != null) {
  				RemoteRepositoryCache logCache = switched ? cacheImpl.getTraceCache() : cacheImpl.getLogCache();
  				if (logCache != null) {
  					getLogResult().setCache(logCache);
  				}
  			}
  			if (getTraceResult() != null) {
  				RemoteRepositoryCache traceCache = switched ? cacheImpl.getLogCache() : cacheImpl.getTraceCache();
  				if (traceCache != null) {
  					getTraceResult().setCache(traceCache);
  				}
  			}
  		} else {
  			throw new IllegalArgumentException("Unknown implementation of the RemoteListCache instance");
  		}
  	}
docs: sets cache for this result based on the provided one
  
  @param cache cache instance received in a remote call