KafkaSrMapper.java 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package com.provectus.kafka.ui.mapper;
  2. import com.provectus.kafka.ui.model.CompatibilityCheckResponseDTO;
  3. import com.provectus.kafka.ui.model.CompatibilityLevelDTO;
  4. import com.provectus.kafka.ui.model.NewSchemaSubjectDTO;
  5. import com.provectus.kafka.ui.model.SchemaReferenceDTO;
  6. import com.provectus.kafka.ui.model.SchemaSubjectDTO;
  7. import com.provectus.kafka.ui.model.SchemaTypeDTO;
  8. import com.provectus.kafka.ui.service.SchemaRegistryService;
  9. import com.provectus.kafka.ui.sr.model.Compatibility;
  10. import com.provectus.kafka.ui.sr.model.CompatibilityCheckResponse;
  11. import com.provectus.kafka.ui.sr.model.NewSubject;
  12. import com.provectus.kafka.ui.sr.model.SchemaReference;
  13. import com.provectus.kafka.ui.sr.model.SchemaType;
  14. import java.util.List;
  15. import java.util.Optional;
  16. import org.mapstruct.Mapper;
  17. @Mapper
  18. public interface KafkaSrMapper {
  19. default SchemaSubjectDTO toDto(SchemaRegistryService.SubjectWithCompatibilityLevel s) {
  20. return new SchemaSubjectDTO()
  21. .id(s.getId())
  22. .version(s.getVersion())
  23. .subject(s.getSubject())
  24. .schema(s.getSchema())
  25. .schemaType(SchemaTypeDTO.fromValue(Optional.ofNullable(s.getSchemaType()).orElse(SchemaType.AVRO).getValue()))
  26. .references(toDto(s.getReferences()))
  27. .compatibilityLevel(s.getCompatibility().toString());
  28. }
  29. List<SchemaReferenceDTO> toDto(List<SchemaReference> references);
  30. CompatibilityCheckResponseDTO toDto(CompatibilityCheckResponse ccr);
  31. CompatibilityLevelDTO.CompatibilityEnum toDto(Compatibility compatibility);
  32. NewSubject fromDto(NewSchemaSubjectDTO subjectDto);
  33. Compatibility fromDto(CompatibilityLevelDTO.CompatibilityEnum dtoEnum);
  34. }