{"action":"closed","issue":{"url":"https://api.github.com/repos/chefArchitect/shindig/issues/168","repository_url":"https://api.github.com/repos/chefArchitect/shindig","labels_url":"https://api.github.com/repos/chefArchitect/shindig/issues/168/labels{/name}","comments_url":"https://api.github.com/repos/chefArchitect/shindig/issues/168/comments","events_url":"https://api.github.com/repos/chefArchitect/shindig/issues/168/events","html_url":"https://github.com/chefArchitect/shindig/issues/168","id":137248490,"number":168,"title":"[SHINDIG-1881] Common container needs a way to disable it's cache","user":{"login":"chefArchitect","id":4200677,"avatar_url":"https://avatars.githubusercontent.com/u/4200677?v=3","gravatar_id":"","url":"https://api.github.com/users/chefArchitect","html_url":"https://github.com/chefArchitect","followers_url":"https://api.github.com/users/chefArchitect/followers","following_url":"https://api.github.com/users/chefArchitect/following{/other_user}","gists_url":"https://api.github.com/users/chefArchitect/gists{/gist_id}","starred_url":"https://api.github.com/users/chefArchitect/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chefArchitect/subscriptions","organizations_url":"https://api.github.com/users/chefArchitect/orgs","repos_url":"https://api.github.com/users/chefArchitect/repos","events_url":"https://api.github.com/users/chefArchitect/events{/privacy}","received_events_url":"https://api.github.com/users/chefArchitect/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/chefArchitect/shindig/labels/bug","name":"bug","color":"fc2929"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2016-02-29T13:04:48Z","updated_at":"2016-02-29T13:06:02Z","closed_at":"2016-02-29T13:06:02Z","body":"<p>Here's the mail list discussion.</p>\n\n<p>From: Ryan Baxter &lt;rbaxter85@apache.org&gt;<br/>\nReply-To: &lt;dev@shindig.apache.org&gt;<br/>\nDate: Mon, 29 Oct 2012 20:47:35 -0500<br/>\nTo: &lt;dev@shindig.apache.org&gt;<br/>\nSubject: Re: Handling missing gadget url</p>\n\n<p>So the gadget XML is not cached on the server, but the metadata request is<br/>\ncached on the client?  The NO_CACHE option looks like it is only used to<br/>\ntell shindig to render the gadget in debug mode.  It is also specifically<br/>\nused for rendering gadgets not for caching in the container.  The metadata<br/>\ncaching functionality in the common container is lacking.  Not only is it<br/>\nalways cached, but the common container never purges the cache.  It<br/>\nwouldn't be hard to check for whether the container is in debug mode and<br/>\ndisable the caching.  Unless we want to introduce a separate caching param<br/>\nfor the container as well...</p>\n\n<p>On Thu, Oct 25, 2012 at 9:57 AM, daviesd &lt;daviesd@oclc.org&gt; wrote:</p>\n\n<p>I have a scenario where a gadget is rendered from a known url, dropbox lets<br/>\nsay.  If later on if I remove the gadget from dropbox and my container<br/>\ntries to re-render it I get the message</p>\n\n<p>Unable to retrieve spec for<br/>\n<a href=\"https://dl.dropbox.com/u/xxxxx/gadgets/oauth2.xml\" class=\"external-link\" rel=\"nofollow\">https://dl.dropbox.com/u/xxxxx/gadgets/oauth2.xml</a>. HTTP error 404</p>\n\n<p>Which seems to come from AbstractSpecFactory.java within Shindig.</p>\n\n<p>However the call to holder.getGadgetInfo still returns the cached entry, so<br/>\nthere is no way for me to detect this scenario so that I can handle it<br/>\nappropriately in my chrome elements (disable things).</p>\n\n<p>If the gadget url is missing on the very first render, then I get back a<br/>\nerror inside gadgetInfo that is passed to the navigateGadget callback.</p>\n\n<p>I’m pretty sure I have caching turned off when I render the gadget.</p>\n\n<p>renderParams<span class=\"error\">&#91;osapi.container.RenderParam.NO_CACHE&#93;</span> = true;</p>\n\n<p>Any ideas on how to detect that the gadget xml spec has gone away on the<br/>\nfirst scenario?</p>"}}