Initial import to Tizen
[profile/ivi/python-twisted.git] / doc / core / howto / tutorial / listings / finger / finger_config.py
1 # Easy configuration
2 # makeService from finger module
3
4 def makeService(config):
5     # finger on port 79
6     s = service.MultiService()
7     f = FingerService(config['file'])
8     h = internet.TCPServer(79, IFingerFactory(f))
9     h.setServiceParent(s)
10
11     # website on port 8000
12     r = resource.IResource(f)
13     r.templateDirectory = config['templates']
14     site = server.Site(r)
15     j = internet.TCPServer(8000, site)
16     j.setServiceParent(s)
17
18     # ssl on port 443
19     if config.get('ssl'):
20         k = internet.SSLServer(443, site, ServerContextFactory())
21         k.setServiceParent(s)
22
23     # irc fingerbot
24     if config.has_key('ircnick'):
25         i = IIRCClientFactory(f)
26         i.nickname = config['ircnick']
27         ircserver = config['ircserver']
28         b = internet.TCPClient(ircserver, 6667, i)
29         b.setServiceParent(s)
30
31     # Pespective Broker on port 8889
32     if config.has_key('pbport'):
33         m = internet.TCPServer(
34             int(config['pbport']),
35             pb.PBServerFactory(IPerspectiveFinger(f)))
36         m.setServiceParent(s)
37
38     return s