code: public <T> void execute(final CachedSpiceRequest<T> cachedSpiceRequest, final RequestListener<T> requestListener) {
          addRequestListenerToListOfRequestListeners(cachedSpiceRequest, requestListener);
          Ln.d("adding request to request queue");
          this.requestQueue.add(cachedSpiceRequest);
      }
docs: Execute a request, put the result in cache and register listeners to
  notify when request is finished.
  @param cachedSpiceRequest
  the request to execute. {@link CachedSpiceRequest} is a
  wrapper of {@link SpiceRequest} that contains cache key and
  cache duration
  @param requestListener
  the listener to notify when the request will finish