]>
Commit | Line | Data |
---|---|---|
1 | import urllib | |
2 | from base64 import encodestring | |
3 | ||
4 | class Auth(object): | |
5 | """ | |
6 | ABC for Authenticator objects. | |
7 | """ | |
8 | ||
9 | def encode_params(self, base_url, method, params): | |
10 | """Encodes parameters for a request suitable for including in a URL | |
11 | or POST body. This method may also add new params to the request | |
12 | if required by the authentication scheme in use.""" | |
13 | raise NotImplementedError() | |
14 | ||
15 | def generate_headers(self): | |
16 | """Generates headers which should be added to the request if required | |
17 | by the authentication scheme in use.""" | |
18 | raise NotImplementedError() | |
19 | ||
20 | ||
21 | class NoAuth(Auth): | |
22 | """ | |
23 | No authentication authenticator. | |
24 | """ | |
25 | def __init__(self): | |
26 | pass | |
27 | ||
28 | def encode_params(self, base_url, method, params): | |
29 | return urllib.urlencode(params) | |
30 | ||
31 | def generate_headers(self): | |
32 | return {} |