Skip to content
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,7 @@
import io.mosip.credential.request.generator.init.SubscribeEvent;
import io.mosip.credential.request.generator.service.CredentialRequestService;
import io.mosip.credential.request.generator.validator.RequestValidator;
import io.mosip.idrepository.core.dto.CredentialIssueRequestDto;
import io.mosip.idrepository.core.dto.CredentialIssueResponse;
import io.mosip.idrepository.core.dto.CredentialIssueResponseDto;
import io.mosip.idrepository.core.dto.CredentialIssueStatusResponse;
import io.mosip.idrepository.core.dto.CredentialRequestIdsDto;
import io.mosip.idrepository.core.dto.PageDto;
import io.mosip.idrepository.core.dto.*;
import io.mosip.idrepository.core.exception.IdRepoAppException;
import io.mosip.idrepository.core.logger.IdRepoLogger;
import io.mosip.kernel.core.http.RequestWrapper;
Expand Down Expand Up @@ -89,7 +84,7 @@ public class CredentialRequestGeneratorController {
@ApiResponse(responseCode = "403", description = "Forbidden" ,content = @Content(schema = @Schema(hidden = true))),
@ApiResponse(responseCode = "404", description = "Not Found" ,content = @Content(schema = @Schema(hidden = true)))})
public ResponseEntity<Object> credentialIssue(
@RequestBody RequestWrapper<CredentialIssueRequestDto> credentialIssueRequestDto) throws IdRepoAppException {
@RequestBody RequestWrapper<CredentialIssueRequest> credentialIssueRequestDto) throws IdRepoAppException {

requestValidator.validateRequestGeneratorRequest(credentialIssueRequestDto);
ResponseWrapper<CredentialIssueResponse> credentialIssueResponseWrapper = credentialRequestService
Expand All @@ -114,7 +109,7 @@ public ResponseEntity<Object> credentialIssue(
@ApiResponse(responseCode = "403", description = "Forbidden" ,content = @Content(schema = @Schema(hidden = true))),
@ApiResponse(responseCode = "404", description = "Not Found" ,content = @Content(schema = @Schema(hidden = true)))})
public ResponseEntity<Object> credentialIssueByRid(
@RequestBody RequestWrapper<CredentialIssueRequestDto> credentialIssueRequestDto, @PathVariable("rid") String rid) {
@RequestBody RequestWrapper<CredentialIssueRequest> credentialIssueRequestDto, @PathVariable("rid") String rid) {

ResponseWrapper<CredentialIssueResponse> credentialIssueResponseWrapper = credentialRequestService
.createCredentialIssuanceByRid(credentialIssueRequestDto.getRequest(),rid);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,10 @@
package io.mosip.credential.request.generator.service;

import io.mosip.idrepository.core.dto.*;
import org.springframework.stereotype.Service;

import io.mosip.credential.request.generator.dto.CredentialStatusEvent;
import io.mosip.credential.request.generator.exception.CredentialRequestGeneratorException;
import io.mosip.idrepository.core.dto.CredentialIssueRequestDto;
import io.mosip.idrepository.core.dto.CredentialIssueResponse;
import io.mosip.idrepository.core.dto.CredentialIssueStatusResponse;
import io.mosip.idrepository.core.dto.CredentialRequestIdsDto;
import io.mosip.idrepository.core.dto.PageDto;
import io.mosip.kernel.core.http.ResponseWrapper;


Expand All @@ -27,7 +23,7 @@ public interface CredentialRequestService {
* @param credentialIssueRequestDto the credential issue request dto
* @return the credential issue response
*/
public ResponseWrapper<CredentialIssueResponse> createCredentialIssuance(CredentialIssueRequestDto credentialIssueRequestDto);
public ResponseWrapper<CredentialIssueResponse> createCredentialIssuance(CredentialIssueRequest credentialIssueRequestDto);

/**
* Cancel credential request.
Expand Down Expand Up @@ -78,5 +74,5 @@ public ResponseWrapper<PageDto<CredentialRequestIdsDto>> getRequestIds(String st
*/
public ResponseWrapper<CredentialIssueResponse> retriggerCredentialRequest(String requestId);

ResponseWrapper<CredentialIssueResponse> createCredentialIssuanceByRid(CredentialIssueRequestDto request, String rid);
ResponseWrapper<CredentialIssueResponse> createCredentialIssuanceByRid(CredentialIssueRequest request, String rid);
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@
import java.util.List;
import java.util.Objects;
import java.util.Optional;

import io.mosip.idrepository.core.dto.*;
import io.mosip.kernel.core.util.CryptoUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
Expand All @@ -36,11 +38,6 @@
import io.mosip.idrepository.core.constant.AuditEvents;
import io.mosip.idrepository.core.constant.AuditModules;
import io.mosip.idrepository.core.constant.IdType;
import io.mosip.idrepository.core.dto.CredentialIssueRequestDto;
import io.mosip.idrepository.core.dto.CredentialIssueResponse;
import io.mosip.idrepository.core.dto.CredentialIssueStatusResponse;
import io.mosip.idrepository.core.dto.CredentialRequestIdsDto;
import io.mosip.idrepository.core.dto.PageDto;
import io.mosip.idrepository.core.helper.AuditHelper;
import io.mosip.idrepository.core.logger.IdRepoLogger;
import io.mosip.idrepository.core.security.IdRepoSecurityManager;
Expand Down Expand Up @@ -101,7 +98,7 @@ public class CredentialRequestServiceImpl implements CredentialRequestService {
* CredentialIssueRequestDto)
*/
@Override
public ResponseWrapper<CredentialIssueResponse> createCredentialIssuance(CredentialIssueRequestDto credentialIssueRequestDto) {
public ResponseWrapper<CredentialIssueResponse> createCredentialIssuance(CredentialIssueRequest credentialIssueRequestDto) {
LOGGER.debug(IdRepoSecurityManager.getUser(), CREDENTIAL_SERVICE, CREATE_CREDENTIAL,
"started creating credential");
List<ServiceError> errorList = new ArrayList<>();
Expand Down Expand Up @@ -159,7 +156,7 @@ public ResponseWrapper<CredentialIssueResponse> createCredentialIssuance(Credent
}

@Override
public ResponseWrapper<CredentialIssueResponse> createCredentialIssuanceByRid(CredentialIssueRequestDto credentialIssueRequestDto, String rid) {
public ResponseWrapper<CredentialIssueResponse> createCredentialIssuanceByRid(CredentialIssueRequest credentialIssueRequestDto, String rid) {
LOGGER.debug(IdRepoSecurityManager.getUser(), CREDENTIAL_SERVICE, CREATE_CREDENTIAL,
"started creating credential");
List<ServiceError> errorList = new ArrayList<>();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package io.mosip.credential.request.generator.validator;

import io.mosip.idrepository.core.dto.CredentialIssueRequest;
import io.mosip.idrepository.core.dto.CredentialIssueRequestDto;
import io.mosip.idrepository.core.exception.IdRepoAppException;
import io.mosip.kernel.core.http.RequestWrapper;
Expand All @@ -19,15 +20,15 @@ public class RequestValidator {
private static final String CREDENTIAL_TYPE = "credentialType";
private static final Object CREDENTIAL_ISSUE_REQUEST_DTO = "credentialIssueRequestDto";

public void validateRequestGeneratorRequest(RequestWrapper<CredentialIssueRequestDto> requestWrapper) throws IdRepoAppException {
public void validateRequestGeneratorRequest(RequestWrapper<CredentialIssueRequest> requestWrapper) throws IdRepoAppException {
validateAPIRequestToCheckNull(requestWrapper);
validateDataToCheckNullOrEmpty(requestWrapper.getRequest().getCredentialType(),
CREDENTIAL_TYPE);
validateDataToCheckNullOrEmpty(requestWrapper.getRequest().getIssuer(), ISSUER);

}

private void validateAPIRequestToCheckNull(RequestWrapper<CredentialIssueRequestDto> requestWrapper) throws IdRepoAppException {
private void validateAPIRequestToCheckNull(RequestWrapper<CredentialIssueRequest> requestWrapper) throws IdRepoAppException {
if (requestWrapper.getRequest() == null) {
throw new IdRepoAppException(INVALID_INPUT_PARAMETER.getErrorCode(),
String.format(INVALID_INPUT_PARAMETER.getErrorMessage(), CREDENTIAL_ISSUE_REQUEST_DTO));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
import io.mosip.idrepository.core.constant.AuditEvents;
import io.mosip.idrepository.core.constant.AuditModules;
import io.mosip.idrepository.core.constant.IdType;
import io.mosip.idrepository.core.dto.*;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
Expand Down Expand Up @@ -40,11 +41,6 @@
import io.mosip.credential.request.generator.repositary.CredentialRepositary;
import io.mosip.credential.request.generator.service.impl.CredentialRequestServiceImpl;
import io.mosip.credential.request.generator.util.Utilities;
import io.mosip.idrepository.core.dto.CredentialIssueRequestDto;
import io.mosip.idrepository.core.dto.CredentialIssueResponse;
import io.mosip.idrepository.core.dto.CredentialIssueStatusResponse;
import io.mosip.idrepository.core.dto.CredentialRequestIdsDto;
import io.mosip.idrepository.core.dto.PageDto;
import io.mosip.idrepository.core.helper.AuditHelper;
import io.mosip.idrepository.core.util.EnvUtil;
import io.mosip.kernel.core.dataaccess.exception.DataAccessLayerException;
Expand Down Expand Up @@ -87,7 +83,7 @@ public void setUp() {

@Test
public void testCreateCredentialIssuanceSuccess() throws JsonProcessingException {
CredentialIssueRequestDto credentialIssueRequestDto=new CredentialIssueRequestDto();
CredentialIssueRequest credentialIssueRequestDto=new CredentialIssueRequest();
credentialIssueRequestDto.setCredentialType("MOSIP");
credentialIssueRequestDto.setId("123");
credentialIssueRequestDto.setEncrypt(true);
Expand All @@ -98,7 +94,7 @@ public void testCreateCredentialIssuanceSuccess() throws JsonProcessingException

@Test
public void testCreateCredentialIssuanceByRidSuccess() throws JsonProcessingException {
CredentialIssueRequestDto credentialIssueRequestDto=new CredentialIssueRequestDto();
CredentialIssueRequest credentialIssueRequestDto=new CredentialIssueRequest();
credentialIssueRequestDto.setCredentialType("MOSIP");
credentialIssueRequestDto.setId("123");
credentialIssueRequestDto.setEncrypt(true);
Expand All @@ -110,7 +106,7 @@ public void testCreateCredentialIssuanceByRidSuccess() throws JsonProcessingExce
@Test
public void testDataAccessLayerExceptionForCreateCredentialByRid() throws JsonProcessingException {
org.mockito.Mockito.doThrow(new DataAccessLayerException("", "", new Throwable())).when(credentialDao).save(Mockito.any());
CredentialIssueRequestDto credentialIssueRequestDto=new CredentialIssueRequestDto();
CredentialIssueRequest credentialIssueRequestDto=new CredentialIssueRequest();
credentialIssueRequestDto.setCredentialType("MOSIP");
credentialIssueRequestDto.setId("123");
credentialIssueRequestDto.setEncrypt(true);
Expand All @@ -122,7 +118,7 @@ public void testDataAccessLayerExceptionForCreateCredentialByRid() throws JsonPr
@Test
public void testDataAccessLayerExceptionForCreateCredential() throws JsonProcessingException {
org.mockito.Mockito.doThrow(new DataAccessLayerException("", "", new Throwable())).when(credentialDao).save(Mockito.any());
CredentialIssueRequestDto credentialIssueRequestDto=new CredentialIssueRequestDto();
CredentialIssueRequest credentialIssueRequestDto=new CredentialIssueRequest();
credentialIssueRequestDto.setCredentialType("MOSIP");
credentialIssueRequestDto.setId("123");
credentialIssueRequestDto.setEncrypt(true);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -91,14 +91,18 @@ private void init() {
* @return the rest request DTO
* @throws IdRepoDataValidationException the ID data validation exception
*/

public RestRequestDTO buildRequest(RestServicesConstants restService, Object requestBody, Class<?> returnType)
throws IdRepoDataValidationException {
return buildRequest(restService,Map.of(),requestBody,returnType);

}

public RestRequestDTO buildRequest(RestServicesConstants restService, Map<String, String> pathVariables,
Object requestBody, Class<?> returnType) throws IdRepoDataValidationException {
RestRequestDTO request = new RestRequestDTO();
MultiValueMap<String, String> paramMap = new LinkedMultiValueMap<>();
Map<String, String> pathVariables = new HashMap<>();

String serviceName = restService.getServiceName();

String uri = getProperty(serviceName, REST_URI);
String httpMethod = getProperty(serviceName, REST_HTTP_METHOD);
String timeout = getProperty(serviceName, REST_TIMEOUT);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,9 @@ public enum IdRepoErrorConstants {
/** The record exists. */
RECORD_EXISTS("IDR-IDC-012", "Record already exists in DB"),

/** The update count limit for attributes exceeded. */
UPDATE_COUNT_LIMIT_EXCEEDED("IDR-IDC-013", "Update count limit for the attributes exceeded:- %s"),

// Identity Service

/** The identity mismatch. */
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,9 @@ public enum RestServicesConstants {

RETRIEVE_UIN_BY_VID("mosip.idrepo.retrieve-uin-by-vid"),

BIO_EXTRACTOR_SERVICE("mosip.idrepo.bio-extractor-service");
BIO_EXTRACTOR_SERVICE("mosip.idrepo.bio-extractor-service"),

CREDENTIAL_REQUEST_SERVICE_V2("mosip.idrepo.credential-request-v2");

/** The service name. */
private final String serviceName;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package io.mosip.idrepository.core.dto;

import lombok.Data;

import java.util.List;
import java.util.Map;

@Data
public class CredentialIssueRequest {

private String id;
private String credentialType;
//partner id
private String issuer;
private String recepiant;
private String user;
private boolean encrypt;
private String encryptionKey;
private List<String> sharableAttributes;
private Map<String,Object> additionalData;
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import lombok.Data;

@Data
public class CredentialIssueRequestDto {
public class CredentialIssueRequestDto {



Expand All @@ -20,5 +20,6 @@ public class CredentialIssueRequestDto {
private String encryptionKey;
private List<String> sharableAttributes;
private Map<String,Object> additionalData;
private String requestId;

}
Loading