mirror of
https://github.com/python/cpython.git
synced 2024-11-24 10:24:35 +08:00
Renamed the SocketServer module to 'socketserver'.
Merged revisions 63132 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r63132 | alexandre.vassalotti | 2008-05-11 22:11:22 -0400 (Sun, 11 May 2008) | 4 lines Updated all import statements to use the new socketserver module name. Renamed socketserver module in its own documentation. Renamed documentation references. ........
This commit is contained in:
parent
6f1e619b41
commit
ce261952e6
@ -21,7 +21,7 @@ Usually, this module isn't used directly, but is used as a basis for building
|
||||
functioning Web servers. See the :mod:`SimpleHTTPServer` and
|
||||
:mod:`CGIHTTPServer` modules.
|
||||
|
||||
The first class, :class:`HTTPServer`, is a :class:`SocketServer.TCPServer`
|
||||
The first class, :class:`HTTPServer`, is a :class:`socketserver.TCPServer`
|
||||
subclass. It creates and listens at the HTTP socket, dispatching the requests
|
||||
to a handler. Code to create and run the server looks like this::
|
||||
|
||||
|
@ -1274,17 +1274,17 @@ the receiving end. A simple way of doing this is attaching a
|
||||
logger2.warning('Jail zesty vixen who grabbed pay from quack.')
|
||||
logger2.error('The five boxing wizards jump quickly.')
|
||||
|
||||
At the receiving end, you can set up a receiver using the :mod:`SocketServer`
|
||||
At the receiving end, you can set up a receiver using the :mod:`socketserver`
|
||||
module. Here is a basic working example::
|
||||
|
||||
import cPickle
|
||||
import logging
|
||||
import logging.handlers
|
||||
import SocketServer
|
||||
import socketserver
|
||||
import struct
|
||||
|
||||
|
||||
class LogRecordStreamHandler(SocketServer.StreamRequestHandler):
|
||||
class LogRecordStreamHandler(socketserver.StreamRequestHandler):
|
||||
"""Handler for a streaming logging request.
|
||||
|
||||
This basically logs the record using whatever logging policy is
|
||||
@ -1326,7 +1326,7 @@ module. Here is a basic working example::
|
||||
# cycles and network bandwidth!
|
||||
logger.handle(record)
|
||||
|
||||
class LogRecordSocketReceiver(SocketServer.ThreadingTCPServer):
|
||||
class LogRecordSocketReceiver(socketserver.ThreadingTCPServer):
|
||||
"""simple TCP socket-based logging receiver suitable for testing.
|
||||
"""
|
||||
|
||||
@ -1335,7 +1335,7 @@ module. Here is a basic working example::
|
||||
def __init__(self, host='localhost',
|
||||
port=logging.handlers.DEFAULT_TCP_LOGGING_PORT,
|
||||
handler=LogRecordStreamHandler):
|
||||
SocketServer.ThreadingTCPServer.__init__(self, (host, port), handler)
|
||||
socketserver.ThreadingTCPServer.__init__(self, (host, port), handler)
|
||||
self.abort = 0
|
||||
self.timeout = 1
|
||||
self.logname = None
|
||||
|
@ -20,7 +20,7 @@ XML-RPC servers written in Python. Servers can either be free standing, using
|
||||
functions that can be called by the XML-RPC protocol. The *requestHandler*
|
||||
parameter should be a factory for request handler instances; it defaults to
|
||||
:class:`SimpleXMLRPCRequestHandler`. The *addr* and *requestHandler* parameters
|
||||
are passed to the :class:`SocketServer.TCPServer` constructor. If *logRequests*
|
||||
are passed to the :class:`socketserver.TCPServer` constructor. If *logRequests*
|
||||
is true (the default), requests will be logged; setting this parameter to false
|
||||
will turn off logging. The *allow_none* and *encoding* parameters are passed
|
||||
on to :mod:`xmlrpclib` and control the XML-RPC responses that will be returned
|
||||
@ -50,7 +50,7 @@ SimpleXMLRPCServer Objects
|
||||
--------------------------
|
||||
|
||||
The :class:`SimpleXMLRPCServer` class is based on
|
||||
:class:`SocketServer.TCPServer` and provides a means of creating simple, stand
|
||||
:class:`socketserver.TCPServer` and provides a means of creating simple, stand
|
||||
alone XML-RPC servers.
|
||||
|
||||
|
||||
|
@ -453,7 +453,7 @@ The module :mod:`socket` exports the following constants and functions:
|
||||
|
||||
.. seealso::
|
||||
|
||||
Module :mod:`SocketServer`
|
||||
Module :mod:`socketserver`
|
||||
Classes that simplify writing network servers.
|
||||
|
||||
|
||||
|
@ -1,12 +1,11 @@
|
||||
|
||||
:mod:`SocketServer` --- A framework for network servers
|
||||
:mod:`socketserver` --- A framework for network servers
|
||||
=======================================================
|
||||
|
||||
.. module:: SocketServer
|
||||
.. module:: socketserver
|
||||
:synopsis: A framework for network servers.
|
||||
|
||||
|
||||
The :mod:`SocketServer` module simplifies the task of writing network servers.
|
||||
The :mod:`socketserver` module simplifies the task of writing network servers.
|
||||
|
||||
There are four basic server classes: :class:`TCPServer` uses the Internet TCP
|
||||
protocol, which provides for continuous streams of data between the client and
|
||||
@ -213,7 +212,7 @@ server classes like :class:`TCPServer`; these methods aren't useful to external
|
||||
users of the server object.
|
||||
|
||||
.. XXX should the default implementations of these be documented, or should
|
||||
it be assumed that the user will look at SocketServer.py?
|
||||
it be assumed that the user will look at socketserver.py?
|
||||
|
||||
|
||||
.. function:: finish_request()
|
||||
|
@ -75,7 +75,7 @@ import sys
|
||||
import time
|
||||
import socket # For gethostbyaddr()
|
||||
import mimetools
|
||||
import SocketServer
|
||||
import socketserver
|
||||
|
||||
# Default error message template
|
||||
DEFAULT_ERROR_MESSAGE = """\
|
||||
@ -95,19 +95,19 @@ DEFAULT_ERROR_CONTENT_TYPE = "text/html;charset=utf-8"
|
||||
def _quote_html(html):
|
||||
return html.replace("&", "&").replace("<", "<").replace(">", ">")
|
||||
|
||||
class HTTPServer(SocketServer.TCPServer):
|
||||
class HTTPServer(socketserver.TCPServer):
|
||||
|
||||
allow_reuse_address = 1 # Seems to make sense in testing environment
|
||||
|
||||
def server_bind(self):
|
||||
"""Override server_bind to store the server name."""
|
||||
SocketServer.TCPServer.server_bind(self)
|
||||
socketserver.TCPServer.server_bind(self)
|
||||
host, port = self.socket.getsockname()[:2]
|
||||
self.server_name = socket.getfqdn(host)
|
||||
self.server_port = port
|
||||
|
||||
|
||||
class BaseHTTPRequestHandler(SocketServer.StreamRequestHandler):
|
||||
class BaseHTTPRequestHandler(socketserver.StreamRequestHandler):
|
||||
|
||||
"""HTTP request handler base class.
|
||||
|
||||
|
@ -100,7 +100,7 @@ server.handle_request()
|
||||
|
||||
import xmlrpclib
|
||||
from xmlrpclib import Fault
|
||||
import SocketServer
|
||||
import socketserver
|
||||
import BaseHTTPServer
|
||||
import sys
|
||||
import os
|
||||
@ -494,7 +494,7 @@ class SimpleXMLRPCRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
|
||||
if self.server.logRequests:
|
||||
BaseHTTPServer.BaseHTTPRequestHandler.log_request(self, code, size)
|
||||
|
||||
class SimpleXMLRPCServer(SocketServer.TCPServer,
|
||||
class SimpleXMLRPCServer(socketserver.TCPServer,
|
||||
SimpleXMLRPCDispatcher):
|
||||
"""Simple XML-RPC server.
|
||||
|
||||
@ -518,7 +518,7 @@ class SimpleXMLRPCServer(SocketServer.TCPServer,
|
||||
self.logRequests = logRequests
|
||||
|
||||
SimpleXMLRPCDispatcher.__init__(self, allow_none, encoding)
|
||||
SocketServer.TCPServer.__init__(self, addr, requestHandler, bind_and_activate)
|
||||
socketserver.TCPServer.__init__(self, addr, requestHandler, bind_and_activate)
|
||||
|
||||
# [Bug #1222790] If possible, set close-on-exec flag; if a
|
||||
# method spawns a subprocess, the subprocess shouldn't have
|
||||
|
@ -5,7 +5,7 @@ connect to the Idle process, which listens for the connection. Since Idle has
|
||||
has only one client per server, this was not a limitation.
|
||||
|
||||
+---------------------------------+ +-------------+
|
||||
| SocketServer.BaseRequestHandler | | SocketIO |
|
||||
| socketserver.BaseRequestHandler | | SocketIO |
|
||||
+---------------------------------+ +-------------+
|
||||
^ | register() |
|
||||
| | unregister()|
|
||||
@ -31,7 +31,7 @@ import sys
|
||||
import os
|
||||
import socket
|
||||
import select
|
||||
import SocketServer
|
||||
import socketserver
|
||||
import struct
|
||||
import pickle
|
||||
import threading
|
||||
@ -66,12 +66,12 @@ copyreg.pickle(types.CodeType, pickle_code, unpickle_code)
|
||||
BUFSIZE = 8*1024
|
||||
LOCALHOST = '127.0.0.1'
|
||||
|
||||
class RPCServer(SocketServer.TCPServer):
|
||||
class RPCServer(socketserver.TCPServer):
|
||||
|
||||
def __init__(self, addr, handlerclass=None):
|
||||
if handlerclass is None:
|
||||
handlerclass = RPCHandler
|
||||
SocketServer.TCPServer.__init__(self, addr, handlerclass)
|
||||
socketserver.TCPServer.__init__(self, addr, handlerclass)
|
||||
|
||||
def server_bind(self):
|
||||
"Override TCPServer method, no bind() phase for connecting entity"
|
||||
@ -492,7 +492,7 @@ class RemoteProxy(object):
|
||||
def __init__(self, oid):
|
||||
self.oid = oid
|
||||
|
||||
class RPCHandler(SocketServer.BaseRequestHandler, SocketIO):
|
||||
class RPCHandler(socketserver.BaseRequestHandler, SocketIO):
|
||||
|
||||
debugging = False
|
||||
location = "#S" # Server
|
||||
@ -500,10 +500,10 @@ class RPCHandler(SocketServer.BaseRequestHandler, SocketIO):
|
||||
def __init__(self, sock, addr, svr):
|
||||
svr.current_handler = self ## cgt xxx
|
||||
SocketIO.__init__(self, sock)
|
||||
SocketServer.BaseRequestHandler.__init__(self, sock, addr, svr)
|
||||
socketserver.BaseRequestHandler.__init__(self, sock, addr, svr)
|
||||
|
||||
def handle(self):
|
||||
"handle() method required by SocketServer"
|
||||
"handle() method required by socketserver"
|
||||
self.mainloop()
|
||||
|
||||
def get_remote_proxy(self, oid):
|
||||
|
@ -32,7 +32,7 @@ try:
|
||||
except ImportError:
|
||||
thread = None
|
||||
|
||||
from SocketServer import ThreadingTCPServer, StreamRequestHandler
|
||||
from socketserver import ThreadingTCPServer, StreamRequestHandler
|
||||
|
||||
|
||||
DEFAULT_LOGGING_CONFIG_PORT = 9030
|
||||
|
@ -38,7 +38,7 @@ class AllTest(unittest.TestCase):
|
||||
self.check_all("Cookie")
|
||||
self.check_all("Queue")
|
||||
self.check_all("SimpleHTTPServer")
|
||||
self.check_all("SocketServer")
|
||||
self.check_all("socketserver")
|
||||
self.check_all("aifc")
|
||||
self.check_all("base64")
|
||||
self.check_all("bdb")
|
||||
|
@ -33,7 +33,7 @@ import os
|
||||
import re
|
||||
import select
|
||||
import socket
|
||||
from SocketServer import ThreadingTCPServer, StreamRequestHandler
|
||||
from socketserver import ThreadingTCPServer, StreamRequestHandler
|
||||
import string
|
||||
import struct
|
||||
import sys
|
||||
|
@ -1,5 +1,5 @@
|
||||
"""
|
||||
Test suite for SocketServer.py.
|
||||
Test suite for socketserver.
|
||||
"""
|
||||
|
||||
import contextlib
|
||||
@ -13,7 +13,7 @@ import tempfile
|
||||
import threading
|
||||
import time
|
||||
import unittest
|
||||
import SocketServer
|
||||
import socketserver
|
||||
|
||||
import test.test_support
|
||||
from test.test_support import reap_children, verbose, TestSkipped
|
||||
@ -40,12 +40,12 @@ def receive(sock, n, timeout=20):
|
||||
raise RuntimeError("timed out on %r" % (sock,))
|
||||
|
||||
if HAVE_UNIX_SOCKETS:
|
||||
class ForkingUnixStreamServer(SocketServer.ForkingMixIn,
|
||||
SocketServer.UnixStreamServer):
|
||||
class ForkingUnixStreamServer(socketserver.ForkingMixIn,
|
||||
socketserver.UnixStreamServer):
|
||||
pass
|
||||
|
||||
class ForkingUnixDatagramServer(SocketServer.ForkingMixIn,
|
||||
SocketServer.UnixDatagramServer):
|
||||
class ForkingUnixDatagramServer(socketserver.ForkingMixIn,
|
||||
socketserver.UnixDatagramServer):
|
||||
pass
|
||||
|
||||
|
||||
@ -172,55 +172,55 @@ class SocketServerTest(unittest.TestCase):
|
||||
s.close()
|
||||
|
||||
def test_TCPServer(self):
|
||||
self.run_server(SocketServer.TCPServer,
|
||||
SocketServer.StreamRequestHandler,
|
||||
self.run_server(socketserver.TCPServer,
|
||||
socketserver.StreamRequestHandler,
|
||||
self.stream_examine)
|
||||
|
||||
def test_ThreadingTCPServer(self):
|
||||
self.run_server(SocketServer.ThreadingTCPServer,
|
||||
SocketServer.StreamRequestHandler,
|
||||
self.run_server(socketserver.ThreadingTCPServer,
|
||||
socketserver.StreamRequestHandler,
|
||||
self.stream_examine)
|
||||
|
||||
if HAVE_FORKING:
|
||||
def test_ForkingTCPServer(self):
|
||||
with simple_subprocess(self):
|
||||
self.run_server(SocketServer.ForkingTCPServer,
|
||||
SocketServer.StreamRequestHandler,
|
||||
self.run_server(socketserver.ForkingTCPServer,
|
||||
socketserver.StreamRequestHandler,
|
||||
self.stream_examine)
|
||||
|
||||
if HAVE_UNIX_SOCKETS:
|
||||
def test_UnixStreamServer(self):
|
||||
self.run_server(SocketServer.UnixStreamServer,
|
||||
SocketServer.StreamRequestHandler,
|
||||
self.run_server(socketserver.UnixStreamServer,
|
||||
socketserver.StreamRequestHandler,
|
||||
self.stream_examine)
|
||||
|
||||
def test_ThreadingUnixStreamServer(self):
|
||||
self.run_server(SocketServer.ThreadingUnixStreamServer,
|
||||
SocketServer.StreamRequestHandler,
|
||||
self.run_server(socketserver.ThreadingUnixStreamServer,
|
||||
socketserver.StreamRequestHandler,
|
||||
self.stream_examine)
|
||||
|
||||
if HAVE_FORKING:
|
||||
def test_ForkingUnixStreamServer(self):
|
||||
with simple_subprocess(self):
|
||||
self.run_server(ForkingUnixStreamServer,
|
||||
SocketServer.StreamRequestHandler,
|
||||
socketserver.StreamRequestHandler,
|
||||
self.stream_examine)
|
||||
|
||||
def test_UDPServer(self):
|
||||
self.run_server(SocketServer.UDPServer,
|
||||
SocketServer.DatagramRequestHandler,
|
||||
self.run_server(socketserver.UDPServer,
|
||||
socketserver.DatagramRequestHandler,
|
||||
self.dgram_examine)
|
||||
|
||||
def test_ThreadingUDPServer(self):
|
||||
self.run_server(SocketServer.ThreadingUDPServer,
|
||||
SocketServer.DatagramRequestHandler,
|
||||
self.run_server(socketserver.ThreadingUDPServer,
|
||||
socketserver.DatagramRequestHandler,
|
||||
self.dgram_examine)
|
||||
|
||||
if HAVE_FORKING:
|
||||
def test_ForkingUDPServer(self):
|
||||
with simple_subprocess(self):
|
||||
self.run_server(SocketServer.ForkingUDPServer,
|
||||
SocketServer.DatagramRequestHandler,
|
||||
self.run_server(socketserver.ForkingUDPServer,
|
||||
socketserver.DatagramRequestHandler,
|
||||
self.dgram_examine)
|
||||
|
||||
# Alas, on Linux (at least) recvfrom() doesn't return a meaningful
|
||||
@ -228,19 +228,19 @@ class SocketServerTest(unittest.TestCase):
|
||||
|
||||
# if HAVE_UNIX_SOCKETS:
|
||||
# def test_UnixDatagramServer(self):
|
||||
# self.run_server(SocketServer.UnixDatagramServer,
|
||||
# SocketServer.DatagramRequestHandler,
|
||||
# self.run_server(socketserver.UnixDatagramServer,
|
||||
# socketserver.DatagramRequestHandler,
|
||||
# self.dgram_examine)
|
||||
#
|
||||
# def test_ThreadingUnixDatagramServer(self):
|
||||
# self.run_server(SocketServer.ThreadingUnixDatagramServer,
|
||||
# SocketServer.DatagramRequestHandler,
|
||||
# self.run_server(socketserver.ThreadingUnixDatagramServer,
|
||||
# socketserver.DatagramRequestHandler,
|
||||
# self.dgram_examine)
|
||||
#
|
||||
# if HAVE_FORKING:
|
||||
# def test_ForkingUnixDatagramServer(self):
|
||||
# self.run_server(SocketServer.ForkingUnixDatagramServer,
|
||||
# SocketServer.DatagramRequestHandler,
|
||||
# self.run_server(socketserver.ForkingUnixDatagramServer,
|
||||
# socketserver.DatagramRequestHandler,
|
||||
# self.dgram_examine)
|
||||
|
||||
|
||||
|
@ -8,7 +8,7 @@ from wsgiref.validate import validator
|
||||
from wsgiref.simple_server import WSGIServer, WSGIRequestHandler, demo_app
|
||||
from wsgiref.simple_server import make_server
|
||||
from io import StringIO, BytesIO, BufferedReader
|
||||
from SocketServer import BaseServer
|
||||
from socketserver import BaseServer
|
||||
import re, sys
|
||||
|
||||
from test import test_support
|
||||
|
@ -21,6 +21,8 @@ Extension Modules
|
||||
Library
|
||||
-------
|
||||
|
||||
- The SocketServer module has been renamed to socketserver.
|
||||
|
||||
- Fix the __all__ setting on 'collections' to include UserList and UserString.
|
||||
|
||||
- The sre module has been removed.
|
||||
|
@ -1919,7 +1919,7 @@ site Append module search paths for third-party packages to
|
||||
sys.path.
|
||||
smtplib SMTP Client class (RFC 821)
|
||||
sndhdr Several routines that help recognizing sound.
|
||||
SocketServer Generic socket server classes.
|
||||
socketserver Generic socket server classes.
|
||||
stat Constants and functions for interpreting stat/lstat struct.
|
||||
statvfs Constants for interpreting statvfs struct as returned by
|
||||
os.statvfs()and os.fstatvfs() (if they exist).
|
||||
@ -2211,5 +2211,3 @@ Breakpoints are stored as filename, line number tuples. If a module is reloaded
|
||||
after editing, any remembered breakpoints are likely to be wrong.
|
||||
|
||||
Always single-steps through top-most stack frame. That is, "c" acts like "n".
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user