Author: ayoung
Date: Wed Feb 24 02:34:30 2010
New Revision: 8561
URL: http://svn.slimdevices.com/jive?rev=8561&view=rev
Log:
bug 15633: cannot switch to SD card content without network
Make connection-failure for local players be notified more quickly - as
soon as it is detected - rather than having to time out after 20s.
Modified:
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ChooseMusicSource/ChooseMusicSourceApplet.lua
7.5/trunk/squeezeplay/src/squeezeplay/share/jive/net/SlimProto.lua
7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/LocalPlayer.lua
7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/Player.lua
Modified:
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ChooseMusicSource/ChooseMusicSourceApplet.lua
URL:
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ChooseMusicSource/ChooseMusicSourceApplet.lua?rev=8561&r1=8560&r2=8561&view=diff
==============================================================================
---
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ChooseMusicSource/ChooseMusicSourceApplet.lua
(original)
+++
7.5/trunk/squeezeplay/src/squeezeplay/share/applets/ChooseMusicSource/ChooseMusicSourceApplet.lua
Wed Feb 24 02:34:30 2010
@@ -626,8 +626,8 @@
-- with notify_playerNew
timeout = timeout + 1
- if timeout > CONNECT_TIMEOUT then
- log:warn("Timeout passed,
current count: ", timeout)
+ if timeout > CONNECT_TIMEOUT or
player:hasConnectionFailed() then
+ log:warn("Connection failure or
Timeout, current count: ", timeout)
cancelAction()
end
end)
Modified: 7.5/trunk/squeezeplay/src/squeezeplay/share/jive/net/SlimProto.lua
URL:
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/share/jive/net/SlimProto.lua?rev=8561&r1=8560&r2=8561&view=diff
==============================================================================
--- 7.5/trunk/squeezeplay/src/squeezeplay/share/jive/net/SlimProto.lua
(original)
+++ 7.5/trunk/squeezeplay/src/squeezeplay/share/jive/net/SlimProto.lua Wed Feb
24 02:34:30 2010
@@ -363,9 +363,10 @@
local obj = oo.rawnew(self, {})
-- connection state UNCONNECTED / CONNECTED
- obj.state = UNCONNECTED
- obj.capabilities = {}
- obj.txqueue = {}
+ obj.state = UNCONNECTED
+ obj.connectionFailed = false
+ obj.capabilities = {}
+ obj.txqueue = {}
-- helo packet sent on connection
obj.heloPacket = heloPacket
@@ -458,6 +459,7 @@
log:info("server told us to connect to ", serverip)
+ self.connectionFailed = false
_connectToAddr(self, serverip)
end
@@ -475,6 +477,7 @@
end
end
+ self.connectionFailed = false
_connectToAddr(self, serverip)
end
@@ -512,6 +515,7 @@
-- We got a packet so we must be connected
self.state = CONNECTED
+ self.connectionFailed = false
log:debug("read opcode=", opcode, " #", #data)
@@ -663,6 +667,10 @@
return self.state == CONNECTED
end
+-- Has the connection attempt actually failed
+function hasConnectionFailed(self)
+ return self.connectionFailed
+end
-- Set the callback to get a status packet
function statusPacketCallback(self, callback)
@@ -767,6 +775,7 @@
self:disconnect()
self.state = CONNECTING
+ self.connectionFailed = true
self.reconnectTimer:restart(interval)
end
@@ -777,7 +786,7 @@
return
end
- self:connect()
+ self:_connectToAddr(self.serverip)
end
Modified: 7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/LocalPlayer.lua
URL:
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/LocalPlayer.lua?rev=8561&r1=8560&r2=8561&view=diff
==============================================================================
--- 7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/LocalPlayer.lua
(original)
+++ 7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/LocalPlayer.lua Wed
Feb 24 02:34:30 2010
@@ -246,6 +246,12 @@
function isConnected(self)
return self.slimproto:isConnected() and Player.isConnected(self)
end
+
+-- Has the connection attempt actually failed
+function hasConnectionFailed(self)
+ return self.slimproto:hasConnectionFailed()
+end
+
function setSignalStrength(self, signalStrength)
Modified: 7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/Player.lua
URL:
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/Player.lua?rev=8561&r1=8560&r2=8561&view=diff
==============================================================================
--- 7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/Player.lua (original)
+++ 7.5/trunk/squeezeplay/src/squeezeplay/share/jive/slim/Player.lua Wed Feb 24
02:34:30 2010
@@ -1863,6 +1863,11 @@
return self.slimServer and self.slimServer:isConnected() and
self.info.connected
end
+-- Has the connection attempt actually failed
+-- stub that can be overridden in subclass
+function hasConnectionFailed(self)
+ return false
+end
-- return true if the player is available, that is when it is connected
-- to SqueezeCenter, or in configuration mode (udap or wlan adhoc)
_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/jive-checkins