[pkg-fso-commits] [SCM] FSO frameworkd Debian packaging branch, master, updated. milestone4-368-g700ab82
Michael 'Mickey' Lauer
mickey at vanille-media.de
Mon Feb 2 18:51:51 UTC 2009
The following commit has been merged in the master branch:
commit 456d077428e798dd04f750b7536cb808009d186f
Author: Michael 'Mickey' Lauer <mickey at vanille-media.de>
Date: Wed Jan 7 18:16:48 2009 +0100
ogsmd: add stubs for monitoring API org.freesmartphone.GSM.Monitor.Get{Serving|Neighbour}CellInformation
diff --git a/framework/subsystems/ogsmd/device.py b/framework/subsystems/ogsmd/device.py
index f7cdc93..6451de6 100644
--- a/framework/subsystems/ogsmd/device.py
+++ b/framework/subsystems/ogsmd/device.py
@@ -11,9 +11,10 @@ Module: device
"""
MODULE_NAME = "ogsmd.device"
-__version__ = "0.9.10.0"
+__version__ = "0.9.10.1"
from framework import resource
+from framework.config import config
from modems import modemFactory, allModems, setCurrentModem
import dbus
@@ -30,6 +31,7 @@ DBUS_INTERFACE_NETWORK = "org.freesmartphone.GSM.Network"
DBUS_INTERFACE_CALL = "org.freesmartphone.GSM.Call"
DBUS_INTERFACE_PDP = "org.freesmartphone.GSM.PDP"
DBUS_INTERFACE_CB = "org.freesmartphone.GSM.CB"
+DBUS_INTERFACE_MONITOR = "org.freesmartphone.GSM.Monitor"
DBUS_INTERFACE_RESOURCE = "org.freesmartphone.Resource"
DBUS_INTERFACE_DEBUG = "org.freesmartphone.GSM.Debug"
@@ -613,6 +615,21 @@ class Device( resource.Resource ):
logger.info( "org.freesmartphone.GSM.CB.IncomingCellBroadcast: %s %s", channel, data )
#
+ # dbus org.freesmartphone.GSM.Monitor
+ #
+ @dbus.service.method( DBUS_INTERFACE_MONITOR, "", "a{sv}",
+ async_callbacks=( "dbus_ok", "dbus_error" ) )
+ @resource.checkedmethod
+ def GetServingCellInformation( self, dbus_ok, dbus_error ):
+ mediator.MonitorGetServingCellInformation( self, dbus_ok, dbus_error )
+
+ @dbus.service.method( DBUS_INTERFACE_MONITOR, "", "a(a{sv})",
+ async_callbacks=( "dbus_ok", "dbus_error" ) )
+ @resource.checkedmethod
+ def GetNeighbourCellInformation( self, dbus_ok, dbus_error ):
+ mediator.MonitorGetNeighbourCellInformation( self, dbus_ok, dbus_error )
+
+ #
# dbus org.freesmartphone.GSM.Debug
# WARNING: Do not rely on that, it might vanish any time
#
@@ -649,7 +666,7 @@ class Device( resource.Resource ):
def factory( prefix, controller ):
#=========================================================================#
sys.path.append( os.path.dirname( os.path.dirname( __file__ ) ) )
- modemtype = controller.config.getValue( "ogsmd", "modemtype", "unspecified" )
+ modemtype = config.getValue( "ogsmd", "modemtype", "unspecified" )
device = Device( controller.bus, modemtype )
return [ device ]
diff --git a/framework/subsystems/ogsmd/modems/abstract/mediator.py b/framework/subsystems/ogsmd/modems/abstract/mediator.py
index b7f5c98..009afbc 100644
--- a/framework/subsystems/ogsmd/modems/abstract/mediator.py
+++ b/framework/subsystems/ogsmd/modems/abstract/mediator.py
@@ -259,6 +259,15 @@ class DebugMediator( AbstractMediator, AbstractYieldSupport ):
self._commchannel = self._object.modem.communicationChannel( "DebugMediator" )
AbstractYieldSupport.__init__( self, *args, **kwargs )
+#=========================================================================#
+class MonitorMediator( AbstractMediator, AbstractYieldSupport ):
+#=========================================================================#
+ def __init__( self, *args, **kwargs ):
+ AbstractMediator.__init__( self, *args, **kwargs )
+ # this is a bit ugly, but how should we get the channel elsewhere?
+ self._commchannel = self._object.modem.communicationChannel( "MonitorMediator" )
+ AbstractYieldSupport.__init__( self, *args, **kwargs )
+
#
# import singletons
#
@@ -1545,6 +1554,22 @@ class CbSetCellBroadcastSubscriptions( CbMediator ):
self._commchannel.enqueue( "+CSCB=%s" % message, self.responseFromChannel, self.errorFromChannel )
#
+# Monitor Mediators
+#
+
+#=========================================================================#
+class MonitorGetServingCellInformation( MonitorMediator ):
+#=========================================================================#
+ def trigger( self ):
+ self._error( error.UnsupportedCommand( "org.freesmartphone.GSM.Monitor.GetServingCellInformation" ) )
+
+#=========================================================================#
+class MonitorGetNeighbourCellInformation( MonitorMediator ):
+#=========================================================================#
+ def trigger( self ):
+ self._error( error.UnsupportedCommand( "org.freesmartphone.GSM.Monitor.GetNeighbourCellInformation" ) )
+
+#
# Debug Mediators
#
diff --git a/tools/cli-framework b/tools/cli-framework
index 9cc448b..c13c8b8 100755
--- a/tools/cli-framework
+++ b/tools/cli-framework
@@ -10,7 +10,7 @@ Interactive console for the freesmartphone.org framework
GPLv2 or later
"""
-__version__ = "0.9.1.6"
+__version__ = "0.9.1.7"
import dbus.service
import dbus.mainloop.glib
@@ -70,7 +70,11 @@ def getInterface( busname, objectpath, interface ):
#----------------------------------------------------------------------------#
def getObjectsForInterface( interface ):
#----------------------------------------------------------------------------#
- paths = dbus_hlid.ListObjectsByInterface( "org.freesmartphone.frameworkd", interface, dbus_interface="org.freesmartphone.DBus" )
+ try:
+ paths = dbus_hlid.ListObjectsByInterface( "org.freesmartphone.frameworkd", interface, dbus_interface="org.freesmartphone.DBus" )
+ except dbus.DBusException, e:
+ print "DBus Exception. dbus-hlid not installed"
+ paths = []
result = {}
for path in paths:
result[str(path)] = getInterface( "org.freesmartphone.frameworkd", path, interface )
@@ -115,24 +119,6 @@ frameworkiface = getInterface( \
"/org/freesmartphone/Framework",
"org.freesmartphone.Framework" )
-# gsm data
-gsmdata = getInterface( \
- "org.freesmartphone.ogsmd",
- "/org/freesmartphone/GSM/Server",
- "org.freesmartphone.GSM.Data" )
-
-# gsm homezone
-gsmhz = getInterface( \
- "org.freesmartphone.ogsmd",
- "/org/freesmartphone/GSM/Server",
- "org.freesmartphone.GSM.HZ" )
-
-# gsm phone
-gsmphone = getInterface( \
- "org.freesmartphone.ogsmd",
- "/org/freesmartphone/GSM/Server",
- "org.freesmartphone.GSM.Phone" )
-
# odeviced objects
devaudio = getInterface( \
"org.freesmartphone.odeviced",
@@ -156,7 +142,7 @@ except IndexError:
pass
leds = getObjectsForInterface( "org.freesmartphone.Device.LED" ).values()
-# ogsmd
+# ogsmd device objects
gsmdevice = getInterface( \
"org.freesmartphone.ogsmd",
"/org/freesmartphone/GSM/Device",
@@ -181,6 +167,10 @@ gsmpdp = getInterface( \
"org.freesmartphone.ogsmd",
"/org/freesmartphone/GSM/Device",
"org.freesmartphone.GSM.PDP" )
+gsmmonitor = getInterface( \
+ "org.freesmartphone.ogsmd",
+ "/org/freesmartphone/GSM/Device",
+ "org.freesmartphone.GSM.Monitor" )
gsmtest = getInterface( \
"org.freesmartphone.ogsmd",
"/org/freesmartphone/GSM/Device",
@@ -190,6 +180,20 @@ gsmdebug = getInterface( \
"/org/freesmartphone/GSM/Device",
"org.freesmartphone.GSM.Debug" )
+# ogsmd server objects
+gsmdata = getInterface( \
+ "org.freesmartphone.ogsmd",
+ "/org/freesmartphone/GSM/Server",
+ "org.freesmartphone.GSM.Data" )
+gsmhz = getInterface( \
+ "org.freesmartphone.ogsmd",
+ "/org/freesmartphone/GSM/Server",
+ "org.freesmartphone.GSM.HZ" )
+gsmphone = getInterface( \
+ "org.freesmartphone.ogsmd",
+ "/org/freesmartphone/GSM/Server",
+ "org.freesmartphone.GSM.Phone" )
+
# ogps
gpsaccuracy = getInterface( \
"org.freesmartphone.ogpsd",
--
FSO frameworkd Debian packaging
More information about the pkg-fso-commits
mailing list