Hide keyboard shortcuts

Hot-keys on this page

r m x p   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

1# 

2# Copyright (C) 2019-2020 Leo P. Singer <leo.singer@ligo.org> 

3# 

4# This program is free software: you can redistribute it and/or modify 

5# it under the terms of the GNU General Public License as published by 

6# the Free Software Foundation, either version 3 of the License, or 

7# (at your option) any later version. 

8# 

9# This program is distributed in the hope that it will be useful, 

10# but WITHOUT ANY WARRANTY; without even the implied warranty of 

11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 

12# GNU General Public License for more details. 

13# 

14# You should have received a copy of the GNU General Public License 

15# along with this program. If not, see <https://www.gnu.org/licenses/>. 

16# 

17from .base import Deletable, Mutable, Resource 

18 

19 

20# FIXME: events have a 'tag/' resource whereas superevents have 'tags/'. 

21# Combine BaseTags, EventTags, and SupereventTags into a single Log class 

22# once this inconsistency has been fixed. 

23# 

24# FIXME: GraceDB expects different HTTP methods to write tags for events vs. 

25# superevents! 

26class BaseTags(Deletable, Mutable, Resource): 

27 

28 def get(self, **kwargs): 

29 return super().get(**kwargs)['tags'] 

30 

31 

32class EventTags(BaseTags): 

33 

34 path = 'tag/' 

35 

36 def create(self, tag): 

37 return super().create_or_update(tag) 

38 

39 

40class SupereventTags(BaseTags): 

41 

42 path = 'tags/' 

43 

44 def create(self, label): 

45 return super().create_or_update(None, data={'name': label})