PetMapperImpl.java
package org.petify.shelter.mapper;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.processing.Generated;
import org.petify.shelter.dto.PetImageResponse;
import org.petify.shelter.dto.PetRequest;
import org.petify.shelter.dto.PetResponse;
import org.petify.shelter.dto.PetResponseWithImages;
import org.petify.shelter.enums.Gender;
import org.petify.shelter.enums.PetSize;
import org.petify.shelter.enums.PetType;
import org.petify.shelter.model.Pet;
import org.petify.shelter.model.PetImage;
import org.petify.shelter.model.Shelter;
import org.petify.shelter.util.ImageUrlConverter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Generated(
value = "org.mapstruct.ap.MappingProcessor",
date = "2025-06-26T07:25:38+0000",
comments = "version: 1.6.3, compiler: javac, environment: Java 21.0.7 (Oracle Corporation)"
)
@Component
public class PetMapperImpl implements PetMapper {
@Autowired
private PetImageMapper petImageMapper;
@Override
public PetResponse toDto(Pet pet) {
if ( pet == null ) {
return null;
}
Long shelterId = null;
Long id = null;
String name = null;
PetType type = null;
String breed = null;
Integer age = null;
boolean archived = false;
String description = null;
Gender gender = null;
PetSize size = null;
boolean vaccinated = false;
boolean urgent = false;
boolean sterilized = false;
boolean kidFriendly = false;
shelterId = petShelterId( pet );
id = pet.getId();
name = pet.getName();
type = pet.getType();
breed = pet.getBreed();
age = pet.getAge();
archived = pet.isArchived();
description = pet.getDescription();
gender = pet.getGender();
size = pet.getSize();
vaccinated = pet.isVaccinated();
urgent = pet.isUrgent();
sterilized = pet.isSterilized();
kidFriendly = pet.isKidFriendly();
String imageUrl = ImageUrlConverter.toFullImageUrl(pet.getImageName());
PetResponse petResponse = new PetResponse( id, name, type, breed, age, archived, description, shelterId, gender, size, vaccinated, urgent, sterilized, kidFriendly, imageUrl );
return petResponse;
}
@Override
public PetResponseWithImages toDtoWithImages(Pet pet) {
if ( pet == null ) {
return null;
}
Long shelterId = null;
List<PetImageResponse> images = null;
Long id = null;
String name = null;
PetType type = null;
String breed = null;
Integer age = null;
boolean archived = false;
String description = null;
Gender gender = null;
PetSize size = null;
boolean vaccinated = false;
boolean urgent = false;
boolean sterilized = false;
boolean kidFriendly = false;
shelterId = petShelterId( pet );
images = petImageListToPetImageResponseList( pet.getImages() );
id = pet.getId();
name = pet.getName();
type = pet.getType();
breed = pet.getBreed();
age = pet.getAge();
archived = pet.isArchived();
description = pet.getDescription();
gender = pet.getGender();
size = pet.getSize();
vaccinated = pet.isVaccinated();
urgent = pet.isUrgent();
sterilized = pet.isSterilized();
kidFriendly = pet.isKidFriendly();
String imageUrl = ImageUrlConverter.toFullImageUrl(pet.getImageName());
Double distance = null;
PetResponseWithImages petResponseWithImages = new PetResponseWithImages( id, name, type, breed, age, archived, description, shelterId, gender, size, vaccinated, urgent, sterilized, kidFriendly, imageUrl, images, distance );
return petResponseWithImages;
}
@Override
public PetResponseWithImages toDtoWithImagesAndDistance(Pet pet, Double distance) {
if ( pet == null && distance == null ) {
return null;
}
Long shelterId = null;
List<PetImageResponse> images = null;
Long id = null;
String name = null;
PetType type = null;
String breed = null;
Integer age = null;
boolean archived = false;
String description = null;
Gender gender = null;
PetSize size = null;
boolean vaccinated = false;
boolean urgent = false;
boolean sterilized = false;
boolean kidFriendly = false;
if ( pet != null ) {
shelterId = petShelterId( pet );
images = petImageListToPetImageResponseList( pet.getImages() );
id = pet.getId();
name = pet.getName();
type = pet.getType();
breed = pet.getBreed();
age = pet.getAge();
archived = pet.isArchived();
description = pet.getDescription();
gender = pet.getGender();
size = pet.getSize();
vaccinated = pet.isVaccinated();
urgent = pet.isUrgent();
sterilized = pet.isSterilized();
kidFriendly = pet.isKidFriendly();
}
Double distance1 = null;
distance1 = distance;
String imageUrl = ImageUrlConverter.toFullImageUrl(pet.getImageName());
PetResponseWithImages petResponseWithImages = new PetResponseWithImages( id, name, type, breed, age, archived, description, shelterId, gender, size, vaccinated, urgent, sterilized, kidFriendly, imageUrl, images, distance1 );
return petResponseWithImages;
}
@Override
public Pet toEntity(PetRequest request) {
if ( request == null ) {
return null;
}
Pet pet = new Pet();
pet.setName( request.name() );
pet.setType( request.type() );
pet.setBreed( request.breed() );
pet.setAge( request.age() );
pet.setGender( request.gender() );
pet.setVaccinated( request.vaccinated() );
pet.setUrgent( request.urgent() );
pet.setSterilized( request.sterilized() );
pet.setKidFriendly( request.kidFriendly() );
pet.setDescription( request.description() );
pet.setSize( request.size() );
return pet;
}
private Long petShelterId(Pet pet) {
Shelter shelter = pet.getShelter();
if ( shelter == null ) {
return null;
}
return shelter.getId();
}
protected List<PetImageResponse> petImageListToPetImageResponseList(List<PetImage> list) {
if ( list == null ) {
return null;
}
List<PetImageResponse> list1 = new ArrayList<PetImageResponse>( list.size() );
for ( PetImage petImage : list ) {
list1.add( petImageMapper.toDto( petImage ) );
}
return list1;
}
}