Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-04-25 08:29:10

0001 from rest_framework import serializers
0002 from .models import SystemAgent, AppLog, Run, StfFile, Subscriber, FastMonFile, TFSlice, Worker, RunState, SystemStateEvent
0003 from .workflow_models import STFWorkflow, AgentWorkflowStage, WorkflowMessage, WorkflowDefinition, WorkflowExecution
0004 
0005 class SystemAgentSerializer(serializers.ModelSerializer):
0006     class Meta:
0007         model = SystemAgent
0008         fields = [
0009             'id', 'instance_name', 'agent_type', 'description', 'status',
0010             'last_heartbeat', 'agent_url', 'workflow_enabled',
0011             'current_stf_count', 'total_stf_processed', 'last_stf_processed',
0012             'pid', 'hostname', 'operational_state', 'namespace',
0013             'metadata', 'created_at', 'updated_at'
0014         ]
0015         read_only_fields = ['created_at', 'updated_at']
0016 
0017 class AppLogSerializer(serializers.ModelSerializer):
0018     class Meta:
0019         model = AppLog
0020         fields = '__all__'
0021 
0022 class STFWorkflowSerializer(serializers.ModelSerializer):
0023     class Meta:
0024         model = STFWorkflow
0025         fields = '__all__'
0026 
0027 class AgentWorkflowStageSerializer(serializers.ModelSerializer):
0028     class Meta:
0029         model = AgentWorkflowStage
0030         fields = '__all__'
0031 
0032 class WorkflowMessageSerializer(serializers.ModelSerializer):
0033     class Meta:
0034         model = WorkflowMessage
0035         fields = '__all__'
0036 
0037 class RunSerializer(serializers.ModelSerializer):
0038     class Meta:
0039         model = Run
0040         fields = '__all__'
0041 
0042 class StfFileSerializer(serializers.ModelSerializer):
0043     class Meta:
0044         model = StfFile
0045         fields = '__all__'
0046 
0047 class SubscriberSerializer(serializers.ModelSerializer):
0048     class Meta:
0049         model = Subscriber
0050         fields = '__all__'
0051 
0052 class FastMonFileSerializer(serializers.ModelSerializer):
0053     stf_file = serializers.SlugRelatedField(
0054         slug_field='stf_filename',
0055         queryset=StfFile.objects.all(),
0056     )
0057 
0058     class Meta:
0059         model = FastMonFile
0060         fields = '__all__'
0061 
0062 
0063 class WorkflowDefinitionSerializer(serializers.ModelSerializer):
0064     class Meta:
0065         model = WorkflowDefinition
0066         fields = '__all__'
0067 
0068 
0069 class WorkflowExecutionSerializer(serializers.ModelSerializer):
0070     class Meta:
0071         model = WorkflowExecution
0072         fields = '__all__'
0073 
0074 class LogSummarySerializer(serializers.Serializer):
0075     error_counts = serializers.DictField(child=serializers.IntegerField())
0076     recent_errors = serializers.ListField(child=serializers.DictField())
0077 
0078 
0079 # Fast Processing models serializers
0080 
0081 class TFSliceSerializer(serializers.ModelSerializer):
0082     class Meta:
0083         model = TFSlice
0084         fields = '__all__'
0085 
0086 
0087 class WorkerSerializer(serializers.ModelSerializer):
0088     class Meta:
0089         model = Worker
0090         fields = '__all__'
0091 
0092 
0093 class RunStateSerializer(serializers.ModelSerializer):
0094     class Meta:
0095         model = RunState
0096         fields = '__all__'
0097 
0098 
0099 class SystemStateEventSerializer(serializers.ModelSerializer):
0100     class Meta:
0101         model = SystemStateEvent
0102         fields = '__all__'