Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(74)

Side by Side Diff: third_party/twisted_8_1/twisted/scripts/_twistw.py

Issue 12261012: Remove third_party/twisted_8_1 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/build
Patch Set: Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 # -*- test-case-name: twisted.test.test_twistd -*-
2 # Copyright (c) 2001-2008 Twisted Matrix Laboratories.
3 # See LICENSE for details.
4
5 import warnings
6
7 from twisted.python import log, logfile
8 from twisted.application import app, service, internet
9 from twisted import copyright
10 import sys, os
11
12 class ServerOptions(app.ServerOptions):
13 synopsis = "Usage: twistd [options]"
14
15 optFlags = [['nodaemon','n', "(for backwards compatability)."],
16 ]
17
18 def opt_version(self):
19 """Print version information and exit.
20 """
21 print 'twistd (the Twisted Windows runner) %s' % copyright.version
22 print copyright.copyright
23 sys.exit()
24
25
26 def _getLogObserver(logfilename):
27 """
28 Create and return a suitable log observer for the given configuration.
29
30 The observer will go to stdout if C{logfilename} is empty or equal to
31 C{"-"}. Otherwise, it will go to a file with that name.
32
33 @type logfilename: C{str}
34 @param logfilename: The name of the file to which to log, if other than the
35 default.
36
37 @return: An object suitable to be passed to C{log.addObserver}.
38 """
39 if logfilename == '-' or not logfilename:
40 logFile = sys.stdout
41 else:
42 logFile = logfile.LogFile.fromFullPath(logfilename)
43 return log.FileLogObserver(logFile).emit
44
45
46 def startLogging(*args, **kw):
47 warnings.warn(
48 """
49 Use ApplicationRunner instead of startLogging."
50 """,
51 category=PendingDeprecationWarning,
52 stacklevel=2)
53 observer = _getLogObserver(*args, **kw)
54 log.startLoggingWithObserver(observer)
55 sys.stdout.flush()
56
57
58 class WindowsApplicationRunner(app.ApplicationRunner):
59 """
60 An ApplicationRunner which avoids unix-specific things. No
61 forking, no PID files, no privileges.
62 """
63 def preApplication(self):
64 """
65 Do pre-application-creation setup.
66 """
67 self.oldstdout = sys.stdout
68 self.oldstderr = sys.stderr
69 os.chdir(self.config['rundir'])
70
71
72 def getLogObserver(self):
73 """
74 Override to supply a log observer suitable for Windows based on the
75 given arguments.
76 """
77 return _getLogObserver(self.config['logfile'])
78
79
80 def postApplication(self):
81 """
82 Start the application and run the reactor.
83 """
84 service.IService(self.application).privilegedStartService()
85 app.startApplication(self.application, not self.config['no_save'])
86 app.startApplication(internet.TimerService(0.1, lambda:None), 0)
87 self.startReactor(None, self.oldstdout, self.oldstderr)
88 log.msg("Server Shut Down.")
OLDNEW
« no previous file with comments | « third_party/twisted_8_1/twisted/scripts/_twistd_unix.py ('k') | third_party/twisted_8_1/twisted/scripts/htmlizer.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698