Branch 5.0 for module PLCAPI created from tag PLCAPI-4.2-8
[plcapi.git] / PLC / Methods / AdmAddSite.py
1 from PLC.Faults import *
2 from PLC.Method import Method
3 from PLC.Parameter import Parameter, Mixed
4 from PLC.Sites import Site, Sites
5 from PLC.Auth import Auth
6 from PLC.Methods.AddSite import AddSite
7
8 can_update = lambda (field, value): field in \
9              ['is_public', 'latitude', 'longitude', 'url']
10
11 class AdmAddSite(AddSite):
12     """
13     Deprecated. See AddSite.
14     """
15
16     status = "deprecated"
17
18     site_fields = dict(filter(can_update, Site.fields.items()))
19
20     accepts = [
21         Auth(),
22         Site.fields['name'],
23         Site.fields['abbreviated_name'],
24         Site.fields['login_base'],
25         site_fields
26         ]
27
28     def call(self, auth, name, abbreviated_name, login_base, site_fields = {}):
29         site_fields['name'] = name
30         site_fields['abbreviated_name'] = abbreviated_name
31         site_fields['login_base'] = login_base
32         return AddSite.call(self, auth, site_fields)