OpenSocial / spec

OpenSocial Specification #social
http://opensocial.org/
Apache License 2.0
106 stars 11 forks source link

Total lack of clarity in Gadget Lifecycle Events #1264

Open mmarum-sugarcrm opened 11 years ago

mmarum-sugarcrm commented 11 years ago

Original author: jasn...@gmail.com (March 14, 2012 17:47:12)

SPECIFICATION BUGS ONLY - Description ===================================== The current description of the Gadget Lifecycle Events in the Core Gadget spec is pretty much useless as is... see the discussion below...

Mar 14, 2012 James M. Snell: Hey Ryan... question.. has anyone on your side given much thought to how to gadget lifecycle events play out with regard to embedded experiences? James M. Snell: if so, is there any documentation available I can use to help clarify the discussion around events in the spec.

RYAN J. BAXTER: which lifecycle events are u referring to

James M. Snell: gadget lifecycle events in the core gadget spec James M. Snell: http://opensocial-resources.googlecode.com/svn/spec/trunk/Core-Gadget.xml#LifeCycleEvents

RYAN J. BAXTER: ok, i just wanted to know which ones because there are ones from a container point of view and one from a gadget dev point of view RYAN J. BAXTER: to answer your question, no i haven't

James M. Snell: ok.. the discussion currently in the spec around this is pretty much useless as is and provides zero clarity to how it should be handled... for one there is no notion of events "from a container point of view" and ones "from a gadget dev point of view" ...

RYAN J. BAXTER: well it depends on who the target audience is right? why would u want to document gadget lifecycle from a container perspective in the core gadget spec?

James M. Snell: gadget developers need to understand the relevant gadget lifecycle events they can hook in to using the Link rel="event.*" mechanism James M. Snell: as well as understand what those event notification messages will look like

RYAN J. BAXTER: agree

James M. Snell: also, they need to understand the difference in the lifecycles between a gadget registered with a container and installed on a page vs. a gadget that comes into the system via an embedded experience James M. Snell: the latter may never be registered initially and the container may completely forget about it later

RYAN J. BAXTER: so maybe we need to distinguish it more...for example I can install a gadget but not render it RYAN J. BAXTER: and I may close a gadget but not unistall it RYAN J. BAXTER: those are critical differences when it comes to EE

James M. Snell: yes... the specific lifecycle states need to be defined explicitly James M. Snell: "register", "install", "open", "close", "uninstall"

RYAN J. BAXTER: what is register?

James M. Snell: adding the gadget to a containers catalog

RYAN J. BAXTER: ok...

James M. Snell: it's a distinct action than installing it on a page

RYAN J. BAXTER: that would probably have to be optional

James M. Snell: which is distinct from opening (rendering) the gadget

RYAN J. BAXTER: you may not always "register" a gadget though

James M. Snell: right... I know... there might never be an install or uninstall either James M. Snell: e.g. the container may put the gadget on the page automatically

RYAN J. BAXTER: i guess

James M. Snell: another may be "configure" or "update" James M. Snell: the problem is, none of this is defined in the spec currently so I can't specify any of this in a rewrite unless we get agreement

RYAN J. BAXTER: we need to define what install and uninstall really mean from a gadget dev point of view, my initially impression is that in order to render a gadget on the page it would need to be "installed" but i could be wrong RYAN J. BAXTER: yup agree

James M. Snell: ok James M. Snell: thx... I'm going to open a issue

RYAN J. BAXTER: ok

James M. Snell: do you mind if I simply copy part of this chat transcript into the issue... I don't want to have to retype everything ;) RYAN J. BAXTER: nah thats cool

James M. Snell: thx

Document affected: ================== 1.) Please attach a patch for the document if appropriate. 2.) Post a thread at http://groups.google.com/group/opensocial-and-gadgets-spec/topics linking to this issue report. 3.) Post a comment on this issue, linking back to the thread.

Original issue: http://code.google.com/p/opensocial-resources/issues/detail?id=1272

mmarum-sugarcrm commented 11 years ago

From jasn...@gmail.com on March 14, 2012 23:21:46 See http://docs.opensocial.org/display/OSD/Core+Gadget+-+Gadget+Lifecycle+Events for new draft text for this section and several proposed changes...