protected T fetchFromNetwork(Query query) throws SpecRetrievalFailedException, GadgetException {
HttpRequest request = new HttpRequest(query.specUri)
.setIgnoreCache(query.ignoreCache)
.setGadget(query.gadgetUri)
.setContainer(query.container)
.setSecurityToken( new AnonymousSecurityToken("", 0L, query.gadgetUri.toString(), 0L));
// Since we don't allow any variance in cache time, we should just force the cache time
// globally. This ensures propagation to shared caches when this is set.
request.setCacheTtl((int) (refresh / 1000));