iro/iro.py
changeset 20 0d7ffb9b2c7f
parent 19 fcf8489f1c2f
child 23 0180b538ed74
child 24 2119564de7a9
equal deleted inserted replaced
19:fcf8489f1c2f 20:0d7ffb9b2c7f
     9 #See the GNU General Public License for more details.
     9 #See the GNU General Public License for more details.
    10 
    10 
    11 #You should have received a copy of the GNU General Public License
    11 #You should have received a copy of the GNU General Public License
    12 #along with this program; if not, see <http://www.gnu.org/licenses/>.
    12 #along with this program; if not, see <http://www.gnu.org/licenses/>.
    13 
    13 
       
    14 import multiprocessing, logging
       
    15 #logging anfangen
       
    16 logging.basicConfig(level=logging.DEBUG, format='%(levelname)s-[%(asctime)s %(processName)s (%(threadName)s)]%(message)s')
       
    17 
       
    18 
    14 # Server code
    19 # Server code
    15 
       
    16 from xmlrpc import SecureUserDBXMLRPCServer,UserDB
    20 from xmlrpc import SecureUserDBXMLRPCServer,UserDB
    17 
    21 
    18 from user import User, Admin
    22 from user import User, Admin
    19 import anbieter
    23 import anbieter
    20 import ConfigParser
    24 import ConfigParser
    81 
    85 
    82 
    86 
    83 def start(userlist):
    87 def start(userlist):
    84     from multiprocessing import Queue
    88     from multiprocessing import Queue
    85     from multiprocessing.managers import BaseManager
    89     from multiprocessing.managers import BaseManager
       
    90     import multiprocessing, logging
       
    91 
    86     
    92     
    87     class MyManager(BaseManager):
    93     class MyManager(BaseManager):
    88         pass
    94         pass
    89     
    95     
    90     MyManager.register('SMSJob', SMSJob) 
    96     MyManager.register('SMSJob', SMSJob) 
   134     server = SecureUserDBXMLRPCServer(addr=("localhost", 8000), 
   140     server = SecureUserDBXMLRPCServer(addr=("localhost", 8000), 
   135                                       userdb=userdb,
   141                                       userdb=userdb,
   136                                       certificate=cert,privatekey=key)
   142                                       certificate=cert,privatekey=key)
   137     server.relam="xmlrpc"
   143     server.relam="xmlrpc"
   138     
   144     
   139     print "Server started..."
   145     logging.info('Server gestartet...')
   140     server.serve_forever()
   146     try:
   141     
   147         server.serve_forever()
   142     worker.terminate()
   148     except KeyboardInterrupt:
       
   149         pass
       
   150     except:
       
   151         logging.exception('Äh, ein Fehler ist aufgetreten')
       
   152     finally:    
       
   153         logging.info('Server wird beendet...')
       
   154         queue.close()
       
   155         worker.terminate()
   143 
   156 
   144 if __name__ == '__main__':
   157 if __name__ == '__main__':
   145     userlist=[{"name":"test","password":"test",  "class":User},
   158     userlist=[{"name":"test","password":"test",  "class":User},
   146 	      {"name":"test2","password":"test2", "class": Admin}]
   159 	      {"name":"test2","password":"test2", "class": Admin}]
   147     start(userlist)
   160     start(userlist)