diff options
Diffstat (limited to 'server/__init__.py')
-rw-r--r-- | server/__init__.py | 32 |
1 files changed, 26 insertions, 6 deletions
diff --git a/server/__init__.py b/server/__init__.py index 526c6f9..e174626 100644 --- a/server/__init__.py +++ b/server/__init__.py @@ -1,10 +1,30 @@ # coding=utf-8 -from . import user_session -from . import prolog_session -from . import python_session -from . import robot_session -from . import socket +__all__ = ['socket', 'handlers', 'user_session', 'prolog_session', 'python_session', 'robot_session', 'problems', 'LanguageSession'] + +# language session handlers are added as their modules are loaded and processed +language_session_handlers = {} + +# the base class for all language session handlers +class LanguageSession(object): + + def destroy(self): + pass + + def hint(self, sid, problem_id, program): + pass + + def test(self, sid, problem_id, program): + pass + +# these imports must be made after LanguageSession is defined, otherwise they won't succeed +# the order of imports is important! first language sessions, then user_session + +import server.prolog_session +import server.python_session +import server.robot_session +import server.user_session +import server.socket import server.problems +import server.handlers -__all__ = ['socket', 'handlers', 'user_session', 'prolog_session', 'python_session', 'robot_session', 'problems', 'start'] |