package Ġorg . el k oser ver . server . context . model Ċ Ċ /** Ċ Ġ* ĠInterface Ġimplemented Ġby Ġobjects Ġthat Ġwish Ġto Ġbe Ġnotified Ġwhen Ġtheir Ċ Ġ* Ġcontaining Ġcontext Ġis Ġabout Ġto Ġbe Ġshutdown . Ċ Ġ* Ċ Ġ* ĠWhen Ġthe Ġlast Ġuser Ġleaves Ġa Ġcontext Ġand Ġthere Ġare Ġno Ġobjects Ġret aining Ċ Ġ* Ġthe Ġcontext Ġto Ġkeep Ġit Ġopen , Ġthe Ġserver Ġsh uts Ġthe Ġcontext Ġdown . Ġ ĠAny Ċ Ġ* Ġmodified Ġstate Ġassociated Ġwith Ġthe Ġcontext Ġor Ġany Ġof Ġthe Ġobjects Ġcontained Ċ Ġ* Ġby Ġit Ġis Ġwritten Ġto Ġpersistent Ġstorage Ġand Ġthe Ġcontext Ġand Ġits Ġattend ent Ċ Ġ* Ġobjects Ġbecome Ġel igible Ġfor Ġgarbage Ġcollection . Ġ ĠPri or Ġto Ġdoing Ġthis , Ċ Ġ* Ġhowever , Ġthe Ġserver Ġfirst Ġcalls Ġthe Ġ[ note Context Shutdown ] Ġmethod Ġof Ċ Ġ* Ġeach Ġobject Ġimplementing Ġthis Ġinterface Ġthat Ġhas Ġregistered Ġan Ġinterest Ġby Ċ Ġ* Ġcalled Ġthe Ġcontext 's Ġ[ Ġregister Context Shutdown Watcher () ][ Context . register Context Shutdown Watcher ] Ġmethod . Ċ Ġ* Ċ Ġ* ĠInstances Ġof Ġsubclasses Ġof Ġ[ Mod ] Ġthat Ġimplement Ġthis Ġinterface Ġare Ċ Ġ* Ġautomatically Ġregistered Ġwhen Ġthey Ġare Ġattached Ġto Ġthe Ġcontext Ġor Ġto Ġan Ċ Ġ* Ġobject Ġcontained Ġby Ġthe Ġcontext . Ċ Ġ*/ Ċ interface ĠContext Shutdown Watcher Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDo Ġwhatever Ġyou Ġwant Ġwhen Ġthe Ġcontext Ġsh uts Ġdown . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠWh enever Ġa Ġcontext Ġis Ġabout Ġto Ġbe Ġshutdown , Ġthe Ġserver Ġwill Ġcall Ġthis ĊĠĠĠĠ Ġ* Ġmethod Ġon Ġall Ġobjects Ġthat Ġhave Ġregistered Ġan Ġinterest Ġin Ġthat Ġcontext ĊĠĠĠĠ Ġ* Ġvia Ġthe Ġcontext 's Ġ[ Ġregister Context Shutdown Watcher () ][ Context . register Context Shutdown Watcher ] Ġmethod . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġnote Context Shutdown () Ċ }