package com.release11.klaus.model; import com.release11.klaus.model.constraints.HttpCode; import lombok.*; import org.springframework.data.annotation.Id; import org.springframework.data.redis.core.RedisHash; import org.springframework.data.redis.core.index.Indexed; import javax.validation.constraints.Positive; import java.io.Serializable; import java.util.Map; import java.util.UUID; @Data @ToString @RedisHash("MockedResponseDto") @NoArgsConstructor @AllArgsConstructor public final class MockedResponseDto implements Serializable { @Id private String compositePrimaryKey; @Indexed private UUID clientUUID; @Positive private int mockedResponseId; private String mediaType; private String messageBody; private Map httpHeaders; @HttpCode private Integer httpStatus; public MockedResponseDto(UUID clientUUID, int mockedResponseId, String mediaType, String messageBody, Map httpHeaders, Integer httpStatus) { this.compositePrimaryKey = clientUUID.toString() + "_" + mockedResponseId; this.clientUUID = clientUUID; this.mockedResponseId = mockedResponseId; this.mediaType = mediaType; this.messageBody = messageBody; this.httpHeaders = httpHeaders; this.httpStatus = httpStatus; } }