← Back to team overview

brigas-team team mailing list archive

[Branch ~brigas-team/brigas/trunk] Rev 4: Foram feitas as seguintes blueprints:

 

------------------------------------------------------------
revno: 4
committer: Diogo Dutra <dda@optimus>
branch nick: trunk
timestamp: Wed 2009-06-03 16:57:05 -0300
message:
  Foram feitas as seguintes blueprints:
  https://blueprints.launchpad.net/brigas/+spec/brisa-game-server-device
  Criado o device do game server
  
  https://blueprints.launchpad.net/brigas/+spec/services-plugin-system
  Fiz um código pra adicionar os serviços dentro do diretório games automáticamente.
  Ele também cria um vetor com o nome dos jogos.
  
  https://blueprints.launchpad.net/brigas/+spec/game-manager-service
  Tá só o esqueleto do game manager, ainda não faz nada.
added:
  game-server/bin/
  game-server/bin/brisa-game-server
  game-server/src/__init__.py
  game-server/src/game_server_impl.py
  game-server/src/games/
  game-server/src/games/__init__.py
  game-server/src/services/
  game-server/src/services/__init__.py
  game-server/src/services/game_manager.py
  game-server/src/services/xmls/
  game-server/src/services/xmls/__init__.py

=== added directory 'game-server/bin'
=== added file 'game-server/bin/brisa-game-server'
--- game-server/bin/brisa-game-server	1970-01-01 00:00:00 +0000
+++ game-server/bin/brisa-game-server	2009-06-03 19:57:05 +0000
@@ -0,0 +1,7 @@
+#!/usr/bin/python
+
+from brisa_game_server import GameServerDevice
+
+gs = GameServerDevice("JaNu Game Server", '')
+gs.start()
+

=== added file 'game-server/src/__init__.py'
--- game-server/src/__init__.py	1970-01-01 00:00:00 +0000
+++ game-server/src/__init__.py	2009-06-03 19:57:05 +0000
@@ -0,0 +1,5 @@
+
+
+__all__ = ['GameServerDevice']
+
+from brisa_game_server.game_server_impl import GameServerDevice

=== added file 'game-server/src/game_server_impl.py'
--- game-server/src/game_server_impl.py	1970-01-01 00:00:00 +0000
+++ game-server/src/game_server_impl.py	2009-06-03 19:57:05 +0000
@@ -0,0 +1,69 @@
+#
+# Brisa Game Server Implementation
+#
+
+from os import walk
+
+from brisa.core.reactors import install_default_reactor
+reactor = install_default_reactor()
+
+from brisa.core import log
+from brisa.upnp.device import Device
+
+import brisa_game_server
+from brisa_game_server.services import GameManager
+
+class GameServerDevice(object):
+
+  games_folder = brisa_game_server.__path__[0] + "/games"
+  games_module_path = "brisa_game_server.games"
+
+  def __init__(self, server_name, listen_url):
+    self._server_name = server_name
+    self._listen_url = listen_url
+    self._games = []
+    self.device = None
+
+  def _create_device(self):
+    project_page = 'http://launchpad.net/brigas'
+    self.device = Device('urn:schemas-upnp-org:device:GameServer:1',
+                         self._server_name,
+                         force_listen_url=self._listen_url,
+                         manufacturer='BRiGaS Team. UFAL students',
+                         manufacturer_url=project_page,
+                         model_description='An Opensource UPnP Game Server',
+                         model_name = 'BRisa Game Server version 0.1',
+                         model_number='0.1',
+                         model_url=project_page,
+                         serial_number='01'.rjust(7, '0'))
+
+  def _add_games(self):
+    for root, dirs, files in walk(self.games_folder):
+        if root.endswith("games"):
+          break
+
+    for dir in dirs:
+      try:
+        module_path = "%s.%s" % (self.games_module_path, dir)
+        __import__(module_path)
+        self._games.append(eval("%s.service.id" % module_path))
+        self.device.add_service(eval("%s.service" % module_path))
+      except Exception, e:
+        msg = 'Error while importing %s game. The module '\
+              'path used to load was: %s. Error: %s' % \
+              (dir, self.games_folder, e)
+        log.error(msg)
+
+      print self._games
+
+  def _add_services(self):
+    self._add_games()
+    self.device.add_service(GameManager())
+
+  def start(self):
+    self._create_device()
+    self._add_services()
+    self.device.start()
+    reactor.add_after_stop_func(self.device.stop)
+    reactor.main()
+

=== added directory 'game-server/src/games'
=== added file 'game-server/src/games/__init__.py'
=== added directory 'game-server/src/services'
=== added file 'game-server/src/services/__init__.py'
--- game-server/src/services/__init__.py	1970-01-01 00:00:00 +0000
+++ game-server/src/services/__init__.py	2009-06-03 19:57:05 +0000
@@ -0,0 +1,4 @@
+
+__all__ = ['GameManager']
+
+from brisa_game_server.services.game_manager import GameManager

=== added file 'game-server/src/services/game_manager.py'
--- game-server/src/services/game_manager.py	1970-01-01 00:00:00 +0000
+++ game-server/src/services/game_manager.py	2009-06-03 19:57:05 +0000
@@ -0,0 +1,19 @@
+
+from brisa.core import log
+from brisa.upnp.device.service import Service
+from brisa.upnp.device.action import Action, Argument
+from brisa.upnp.device.service import StateVariable
+
+log = log.getLogger('services.gm')
+
+service_name = 'GameManager'
+service_type = 'urn:schemas-upnp-org:service:GameManager:1'
+
+class GameManager(Service):
+  def __init__(self):
+    Service.__init__(self, service_name, service_type, '')
+    self._create_methods()
+
+  def _create_methods(self):
+		pass
+

=== added directory 'game-server/src/services/xmls'
=== added file 'game-server/src/services/xmls/__init__.py'
--- game-server/src/services/xmls/__init__.py	1970-01-01 00:00:00 +0000
+++ game-server/src/services/xmls/__init__.py	2009-06-03 19:57:05 +0000
@@ -0,0 +1,6 @@
+
+
+
+from os import path
+xml_path = path.dirname(__file__)
+



--
lp:brigas
https://code.launchpad.net/~brigas-team/brigas/trunk

Your team Brisa Game Server Team is subscribed to branch lp:brigas.
To unsubscribe from this branch go to https://code.launchpad.net/~brigas-team/brigas/trunk/+edit-subscription.