def __init__(self, *args, **kwargs): super(Serializer_Template_Worker, self).__init__(*args, **kwargs) context = kwargs.get('context', {}) if context.get('usecase') == 'list_settings_batch': keep_fields(self, ['id', 'name']) elif context.get('usecase') == 'annotation': self.fields[ 'template_assignment'] = Serializer_Template_Assignment( context=context) self.fields['template_hit'] = Serializer_Template_HIT( context=context) self.fields['template_global'] = Serializer_Template_Global( context=context) self.fields.pop('has_assignments') elif context.get('usecase') == 'list_templates_worker': self.fields[ 'template_assignment'] = Serializer_Template_Assignment( context=context) self.fields['template_hit'] = Serializer_Template_HIT( context=context) self.fields['template_global'] = Serializer_Template_Global( context=context) if context.get('fields'): keep_fields(self, context.get('fields'))
def __init__(self, *args, **kwargs): super(Serializer_Project, self).__init__(*args, **kwargs) context = kwargs.get('context', {}) if context.get('fields'): keep_fields(self, context.get('fields'))
def __init__(self, *args, **kwargs): super(Serializer_Template_Global, self).__init__(*args, **kwargs) context = kwargs.get('context', {}) if context.get('usecase') == 'list_templates_worker': keep_fields(serializer=self, fields=['id', 'name']) keep_fields(self, context.get('fields'))
def __init__(self, *args, **kwargs): super(Serializer_Assignment, self).__init__(*args, **kwargs) context = kwargs.get('context', {}) if context.get('usecase') == 'list_assignments': self.fields['hit'] = Serializer_HIT(read_only=True) keep_fields(self, context.get('fields'))
def __init__(self, *args, **kwargs): super(Serializer_Batch, self).__init__(*args, **kwargs) context = kwargs.get('context', {}) self.fields['settings_batch'] = Serializer_Settings_Batch( context=context) keep_fields(self, context.get('fields'))
def test_keep_fields(self): serializer = Serializer_Assignment() keep_fields(serializer, ['id_assignment', 'duration', 'UNKNOWN_FIELD']) self.assertEqual(len(serializer.fields), 2) self.assertIsNotNone(serializer.fields.get('id_assignment')) self.assertIsNotNone(serializer.fields.get('duration')) self.assertIsNone(serializer.fields.get('UNKNOWN_FIELD')) self.assertIsNone(serializer.fields.get('hit'))
def __init__(self, *args, **kwargs): super(Serializer_Settings_Batch, self).__init__(*args, **kwargs) context = kwargs.get('context', {}) if context.get('usecase') == 'annotation' or context.get( 'usecase') == 'list_settings_batch': self.fields['template'] = Serializer_Template_Worker( source='template_worker', context=context) if context.get('fields'): keep_fields(self, context.get('fields'))
def __init__(self, *args, **kwargs): super(Serializer_HIT, self).__init__(*args, **kwargs) context = kwargs.get('context', {}) try: expand = context.get('request').query_params.get('expand') if '__batch__' in expand: self.fields['batch'] = Serializer_Batch(context=context) except AttributeError: pass if context.get('usecase') == 'list_hits': self.fields['batch'] = Serializer_Batch(read_only=True) keep_fields(self, context.get('fields'))
def __init__(self, *args, **kwargs): super(Serializer_Settings_Batch, self).__init__(*args, **kwargs) context = kwargs.get('context', {}) try: expand = context.get('request').query_params.get('expand') if expand is not None and '__template_worker__' in expand: self.fields['template'] = Serializer_Template_Worker( source='template_worker', context=context) except AttributeError: pass if context.get('usecase') == 'annotation' or context.get( 'usecase') == 'list_settings_batch': self.fields['template'] = Serializer_Template_Worker( source='template_worker', context=context) keep_fields(self, context.get('fields'))