Bases: swift.proxy.server.Controller
WSGI controller for account requests
Bases: swift.proxy.server.BaseApplication
WSGI application for the proxy server.
Check for rate limiting.
| Parameters: |
|
|---|
Bases: object
Base WSGI application for the proxy server
Get the controller to handle a request.
| Parameter: | path – path from request |
|---|---|
| Returns: | tuple of (controller class, path dictionary) |
Entry point for proxy server. Should return a WSGI-style callable (such as webob.Response).
| Parameter: | req – webob.Request object |
|---|
Bases: swift.proxy.server.Controller
WSGI controller for container requests
Bases: object
Base WSGI controller class for the proxy
Base handler for HTTP GET or HEAD requests.
| Parameters: |
|
|---|---|
| Returns: | webob.Response object |
Get account information, and also verify that the account exists.
| Parameter: | account – name of the account to get the info for |
|---|---|
| Returns: | tuple of (account partition, account nodes) or (None, None) if it does not exist |
Given a list of responses from several servers, choose the best to return to the API.
| Parameters: |
|
|---|---|
| Returns: | webob.Response object with the correct status, body, etc. set |
Get container information and thusly verify container existance. This will also make a call to account_info to verify that the account exists.
| Parameters: |
|
|---|---|
| Returns: | tuple of (container partition, container nodes) or (None, None) if the container does not exist |
Handles incrementing error counts when talking to nodes.
| Parameter: | node – dictionary of node to increment the error count for |
|---|
Mark a node as error limited.
| Parameter: | node – dictionary of node to error limit |
|---|
Check if the node is currently error limited.
| Parameter: | node – dictionary of node to check |
|---|---|
| Returns: | True if error limited, False otherwise |
Handle logging, and handling of errors.
| Parameters: |
|
|---|
Handle logging of generic exceptions.
| Parameters: |
|
|---|
Node iterator that will first iterate over the normal nodes for a partition and then the handoff partitions for the node.
| Parameters: |
|
|---|
Bases: swift.proxy.server.Controller
WSGI controller for object requests.
Handle common POST/DELETE functionality
| Parameters: |
|
|---|
Decorator to declare which methods are public accessible as HTTP requests
| Parameter: | func – function to make public |
|---|
Helper function to update headers in the response.
| Parameters: |
|
|---|