Author: titmuss
Date: Mon Jun 16 06:02:11 2008
New Revision: 2565

URL: http://svn.slimdevices.com?rev=2565&root=Jive&view=rev
Log:
Bug: 2558
Description:
Don't use closures for jnt:subscribe anymore, the closures will be garbage 
collected and 
never called. It is easy to convert the closures to methods on an object.


Modified:
    
7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay/share/applets/SqueezeDiscovery/SqueezeDiscoveryMeta.lua
    
7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay/share/applets/SqueezeNetworkPIN/SqueezeNetworkPINMeta.lua
    
7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeMeta.lua

Modified: 
7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay/share/applets/SqueezeDiscovery/SqueezeDiscoveryMeta.lua
URL: 
http://svn.slimdevices.com/7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay/share/applets/SqueezeDiscovery/SqueezeDiscoveryMeta.lua?rev=2565&root=Jive&r1=2564&r2=2565&view=diff
==============================================================================
--- 
7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay/share/applets/SqueezeDiscovery/SqueezeDiscoveryMeta.lua
 (original)
+++ 
7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay/share/applets/SqueezeDiscovery/SqueezeDiscoveryMeta.lua
 Mon Jun 16 06:02:11 2008
@@ -76,31 +76,29 @@
                settings.currentPlayer = "ff:ff:ff:ff:ff:fe"
 
                -- wait until SN is connected so we know the PIN
-               local monitor = {
-                       notify_playerNew =
-                               function(self, player)
-                                       if player:getId() ~= 
"ff:ff:ff:ff:ff:ff" then
-                                               return
-                                       end
+               jnt:subscribe(meta)
+       end
+end
 
-                                       -- unsubscribe monitor from future 
events
-                                       jnt:unsubscribe(self)
 
-                                       -- push Choose Player menu
-                                       local selectPlayer = 
appletManager:loadApplet("SelectPlayer")
-                                       if selectPlayer then
-                                               
selectPlayer:setupShow(function() end)
-                                       end
+function notify_playerNew(meta, player)
+       if player:getId() ~= "ff:ff:ff:ff:ff:ff" then
+               return
+       end
 
-                                       -- push Active Squeezenetwork
-                                       local snPin = 
appletManager:loadApplet("SqueezeNetworkPIN")
-                                       if snPin then
-                                               snPin:forcePin(player)
-                                       end
-                               end
-               }
+       -- unsubscribe monitor from future events
+       jnt:unsubscribe(meta)
 
-               jnt:subscribe(monitor)
+       -- push Choose Player menu
+       local selectPlayer = appletManager:loadApplet("SelectPlayer")
+       if selectPlayer then
+               selectPlayer:setupShow(function() end)
+       end
+
+       -- push Active Squeezenetwork
+       local snPin = appletManager:loadApplet("SqueezeNetworkPIN")
+       if snPin then
+               snPin:forcePin(player)
        end
 end
 

Modified: 
7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay/share/applets/SqueezeNetworkPIN/SqueezeNetworkPINMeta.lua
URL: 
http://svn.slimdevices.com/7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay/share/applets/SqueezeNetworkPIN/SqueezeNetworkPINMeta.lua?rev=2565&root=Jive&r1=2564&r2=2565&view=diff
==============================================================================
--- 
7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay/share/applets/SqueezeNetworkPIN/SqueezeNetworkPINMeta.lua
 (original)
+++ 
7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay/share/applets/SqueezeNetworkPIN/SqueezeNetworkPINMeta.lua
 Mon Jun 16 06:02:11 2008
@@ -20,20 +20,18 @@
        -- check for SN PIN when we connect to a new player
        -- this is needed after upgrading from the MP firmware if 
        -- SqueezeNetwork was selected during Ray setup
-       local monitor = {
-               notify_playerCurrent =
-                       function(self, player)
+       jnt:subscribe(meta)
+end
 
-                               if player and player:getPin() then
-                                       log:debug("SqueezeNetworkPIN: player 
has a PIN")
-                                       local applet = 
appletManager:loadApplet("SqueezeNetworkPIN")            
-                                       applet:forcePin(player)
-                               end
-                       end
-       }
 
-       jnt:subscribe(monitor)
+function notify_playerCurrent(self, player)
+       if player and player:getPin() then
+               log:debug("SqueezeNetworkPIN: player has a PIN")
+               local applet = appletManager:loadApplet("SqueezeNetworkPIN")
+               applet:forcePin(player)
+       end
 end
+
 
 --[[
 

Modified: 
7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeMeta.lua
URL: 
http://svn.slimdevices.com/7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeMeta.lua?rev=2565&root=Jive&r1=2564&r2=2565&view=diff
==============================================================================
--- 
7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeMeta.lua
 (original)
+++ 
7.1/branches/discovery-refactor/squeezeplay/src/squeezeplay_jive/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeMeta.lua
 Mon Jun 16 06:02:11 2008
@@ -67,31 +67,29 @@
 
                end
 
-       local monitor = {
-               notify_playerCurrent =
-                       function(self, player)
-                               if not player then
-                                       return
-                               end
+       jnt:subscribe(meta)
 
-                               if meta.player and meta.player ~= player then
-                                       
meta.player:unsubscribe('/slim/firmwarestatus/' .. meta.player.id)
-                               end
+end
 
-                               meta.player = player
+
+function notify_playerCurrent(meta, player)
+       if not player then
+               return
+       end
+
+       if meta.player and meta.player ~= player then
+               meta.player:unsubscribe('/slim/firmwarestatus/' .. 
meta.player.id)
+       end
+
+       meta.player = player
                                
-                               local fwcmd = { 'firmwareupgrade', 
'firmwareVersion:' .. JIVE_VERSION, 'subscribe:0' }
-                               player:subscribe(
-                                       '/slim/firmwarestatus/' .. player.id,
-                                       firmwareUpgradeSink,
-                                       player.id,
-                                       fwcmd
-                               )
-                       end,
-       }
-
-       jnt:subscribe(monitor)
-
+       local fwcmd = { 'firmwareupgrade', 'firmwareVersion:' .. JIVE_VERSION, 
'subscribe:0' }
+       player:subscribe(
+                        '/slim/firmwarestatus/' .. player.id,
+                        firmwareUpgradeSink,
+                        player.id,
+                        fwcmd
+                )
 end
 
 

_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/cgi-bin/mailman/listinfo/jive-checkins

Reply via email to