Indeed, RoboSpice is doing what you are asking for : you pass DurationInMillis.ALWAYS as a parameter to execute.
This means that the data in cache will always be considered expired. Thus, the SpiceRequest will always perform a network call. You should just use a different cacheDuration value when invoking execute.
Since then, Javadoc has been enhanced :
- cacheExpiryDuration : duration in millisecond after which the content of the cache will be considered to be expired. For instance DurationInMillis.ALWAYS means that data in cache will always be considered expired, thus requests will always perform their network operations to get new data. DurationInMillis.NEVER means data will never be considered as expired, requests will never perform network operations to refresh data but will always return cached data. (see {@link DurationInMillis}).*