Skip to content

Commit 5ea3283

Browse files
committed
fix the certficateIssue
1 parent 13d46ff commit 5ea3283

File tree

3 files changed

+13
-8
lines changed

3 files changed

+13
-8
lines changed

all-actors/src/main/java/org/sunbird/cert/actor/CertificateGeneratorActor.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ private void generateCertificate(Request request) throws BaseException {
102102
String courseId = (String) request.getRequest().get(JsonKeys.COURSE_ID);
103103
String batchId = (String) request.getRequest().get(JsonKeys.BATCH_ID);
104104
String userId = (String) request.getRequest().get(JsonKeys.USER_ID);
105-
/*List<String> userToken = scala.collection.JavaConverters.seqAsJavaList(
105+
List<String> userToken = scala.collection.JavaConverters.seqAsJavaList(
106106
(scala.collection.Seq<String>) request.getHeaders().get(JsonKeys.X_AUTHENTICATED_USER_TOKEN)
107107
);
108108
String userIdFromToken = AccessTokenValidator.verifyUserToken(userToken.get(0), true);
@@ -114,7 +114,7 @@ private void generateCertificate(Request request) throws BaseException {
114114
if (StringUtils.isNotEmpty(userIdFromToken) && !userId.equalsIgnoreCase(userIdFromToken)) {
115115
logger.error("generateCertificateV2:Exception Occurred while generating certificate. User token is different from the request UserId" + userId);
116116
throw new BaseException(IResponseMessage.INVALID_REQUESTED_DATA, "You are not authorized to get the certificate for other user", ResponseCode.BAD_REQUEST.getCode());
117-
}*/
117+
}
118118
Map<String, Object> contentInfo = issueCertificateContentHelper.getCourseInfo(courseId);
119119
boolean isUserEligibleForCertificate = true;
120120
boolean isEvent = false;
@@ -192,10 +192,11 @@ private String generatePrintURIAndUpdateRecord(String courseId, String batchId,
192192
String encodedSvg = "";
193193
for (CertModel certModel : certModelList) {
194194
try {
195-
CertificateExtension certificateExtension = certificateGenerator.getCertificateExtension(certModel);
196195
if (MapUtils.isNotEmpty(v2CertificateRegistryMap)) {
197196
uuid = (String) v2CertificateRegistryMap.get(JsonKeys.ID);
198-
} else {
197+
}
198+
CertificateExtension certificateExtension = certificateGenerator.getCertificateExtension(certModel, uuid);
199+
if (StringUtils.isBlank(uuid)) {
199200
uuid = certificateGenerator.getUUID(certificateExtension);
200201
}
201202
Map<String, Object> qrMap = new HashMap<>();

certificate-processor/src/main/java/org/sunbird/incredible/CertificateGenerator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,9 @@ public CertificateGenerator(Map<String, String> properties) {
5252
this.properties = properties;
5353
}
5454

55-
public CertificateExtension getCertificateExtension (CertModel certModel) throws SignatureException.UnreachableException,
55+
public CertificateExtension getCertificateExtension (CertModel certModel, String certificateUUID) throws SignatureException.UnreachableException,
5656
InvalidDateFormatException, SignatureException.CreationException, IOException {
57-
this.certificateExtension = certificateFactory.createCertificate(certModel, properties);
57+
this.certificateExtension = certificateFactory.createCertificate(certModel, properties, certificateUUID);
5858
return certificateExtension;
5959
}
6060

certificate-processor/src/main/java/org/sunbird/incredible/processor/CertificateFactory.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,15 @@ public class CertificateFactory {
3737

3838
private ObjectMapper mapper = new ObjectMapper();
3939

40-
public CertificateExtension createCertificate(CertModel certModel, Map<String, String> properties)
40+
public CertificateExtension createCertificate(CertModel certModel, Map<String, String> properties, String certificateUUID)
4141
throws InvalidDateFormatException, SignatureException.UnreachableException, IOException, SignatureException.CreationException {
4242

4343
String basePath = getDomainUrl(properties);
44-
uuid = basePath + "/" + UUID.randomUUID().toString();
44+
if (StringUtils.isNotBlank(certificateUUID)) {
45+
uuid = basePath + "/" + certificateUUID;
46+
} else {
47+
uuid = basePath + "/" + UUID.randomUUID().toString();
48+
}
4549
CertificateExtensionBuilder certificateExtensionBuilder = new CertificateExtensionBuilder(properties.get(JsonKey.CONTEXT));
4650
CompositeIdentityObjectBuilder compositeIdentityObjectBuilder = new CompositeIdentityObjectBuilder(properties.get(JsonKey.CONTEXT));
4751
BadgeClassBuilder badgeClassBuilder = new BadgeClassBuilder(properties.get(JsonKey.CONTEXT));

0 commit comments

Comments
 (0)