added other types of qrcodes like phone, sms, email, wifi
This commit is contained in:
36
src/main/java/com/safeqr/app/qrcode/model/EmailModel.java
Normal file
36
src/main/java/com/safeqr/app/qrcode/model/EmailModel.java
Normal file
@@ -0,0 +1,36 @@
|
||||
package com.safeqr.app.qrcode.model;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.EmailEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.service.EmailVerificationService;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class EmailModel extends QRCodeModel {
|
||||
private static final Logger logger = LoggerFactory.getLogger(EmailModel.class);
|
||||
|
||||
@JsonIgnore
|
||||
private final EmailVerificationService emailVerificationService;
|
||||
|
||||
EmailEntity details;
|
||||
|
||||
public EmailModel(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity, EmailVerificationService emailVerificationService) {
|
||||
this.scannedQRCode = scannedQRCodeEntity;
|
||||
this.qrCode = qrCodeTypeEntity;
|
||||
this.emailVerificationService = emailVerificationService;
|
||||
this.details = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setDetails() {
|
||||
details = EmailEntity.builder().qrCodeId(scannedQRCode.getId()).build();
|
||||
// Insert into email table
|
||||
emailVerificationService.insertDB(details);
|
||||
}
|
||||
}
|
||||
36
src/main/java/com/safeqr/app/qrcode/model/PhoneModel.java
Normal file
36
src/main/java/com/safeqr/app/qrcode/model/PhoneModel.java
Normal file
@@ -0,0 +1,36 @@
|
||||
package com.safeqr.app.qrcode.model;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.PhoneEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.service.PhoneVerificationService;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class PhoneModel extends QRCodeModel {
|
||||
private static final Logger logger = LoggerFactory.getLogger(PhoneModel.class);
|
||||
|
||||
@JsonIgnore
|
||||
private final PhoneVerificationService phoneVerificationService;
|
||||
|
||||
PhoneEntity details;
|
||||
|
||||
public PhoneModel(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity, PhoneVerificationService phoneVerificationService) {
|
||||
this.scannedQRCode = scannedQRCodeEntity;
|
||||
this.qrCode = qrCodeTypeEntity;
|
||||
this.phoneVerificationService = phoneVerificationService;
|
||||
this.details = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setDetails() {
|
||||
details = PhoneEntity.builder().qrCodeId(scannedQRCode.getId()).build();
|
||||
// Insert into phone table
|
||||
phoneVerificationService.insertDB(details);
|
||||
}
|
||||
}
|
||||
@@ -9,5 +9,5 @@ public abstract class QRCodeModel {
|
||||
QRCodeEntity scannedQRCode;
|
||||
QRCodeTypeEntity qrCode;
|
||||
|
||||
public abstract void insertDB();
|
||||
public abstract void setDetails();
|
||||
}
|
||||
|
||||
36
src/main/java/com/safeqr/app/qrcode/model/SMSModel.java
Normal file
36
src/main/java/com/safeqr/app/qrcode/model/SMSModel.java
Normal file
@@ -0,0 +1,36 @@
|
||||
package com.safeqr.app.qrcode.model;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.SMSEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.service.SMSVerificationService;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class SMSModel extends QRCodeModel {
|
||||
private static final Logger logger = LoggerFactory.getLogger(SMSModel.class);
|
||||
|
||||
@JsonIgnore
|
||||
private final SMSVerificationService smsVerificationService;
|
||||
|
||||
SMSEntity details;
|
||||
|
||||
public SMSModel(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity, SMSVerificationService smsVerificationService) {
|
||||
this.scannedQRCode = scannedQRCodeEntity;
|
||||
this.qrCode = qrCodeTypeEntity;
|
||||
this.smsVerificationService = smsVerificationService;
|
||||
this.details = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setDetails() {
|
||||
details = SMSEntity.builder().qrCodeId(scannedQRCode.getId()).build();
|
||||
// Insert into sms table
|
||||
smsVerificationService.insertDB(details);
|
||||
}
|
||||
}
|
||||
@@ -2,9 +2,8 @@ package com.safeqr.app.qrcode.model;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTextEntity;
|
||||
import com.safeqr.app.qrcode.entity.TextEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.repository.TextRepository;
|
||||
import com.safeqr.app.qrcode.service.TextVerificationService;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
@@ -13,28 +12,25 @@ import org.slf4j.LoggerFactory;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class QRCodeText extends QRCodeModel {
|
||||
private static final Logger logger = LoggerFactory.getLogger(QRCodeText.class);
|
||||
public class TextModel extends QRCodeModel {
|
||||
private static final Logger logger = LoggerFactory.getLogger(TextModel.class);
|
||||
|
||||
@JsonIgnore
|
||||
private final TextVerificationService textVerificationService;
|
||||
@JsonIgnore
|
||||
private final TextRepository textRepository;
|
||||
|
||||
QRCodeTextEntity details;
|
||||
TextEntity details;
|
||||
|
||||
public QRCodeText(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity, TextVerificationService textVerificationService, TextRepository textRepository) {
|
||||
public TextModel(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity, TextVerificationService textVerificationService) {
|
||||
this.scannedQRCode = scannedQRCodeEntity;
|
||||
this.qrCode = qrCodeTypeEntity;
|
||||
this.textVerificationService = textVerificationService;
|
||||
this.textRepository = textRepository;
|
||||
this.details = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insertDB() {
|
||||
details = QRCodeTextEntity.builder().qrCodeId(scannedQRCode.getId()).text(scannedQRCode.getContents()).build();
|
||||
// Insert into URL table
|
||||
textRepository.save(details);
|
||||
public void setDetails() {
|
||||
details = TextEntity.builder().qrCodeId(scannedQRCode.getId()).text(scannedQRCode.getContents()).build();
|
||||
// Insert into text table
|
||||
textVerificationService.insertDB(details);
|
||||
}
|
||||
}
|
||||
@@ -3,12 +3,12 @@ package com.safeqr.app.qrcode.model;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeURLEntity;
|
||||
import com.safeqr.app.qrcode.repository.URLRepository;
|
||||
import com.safeqr.app.qrcode.entity.URLEntity;
|
||||
import com.safeqr.app.qrcode.service.URLVerificationService;
|
||||
import lombok.*;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.net.URISyntaxException;
|
||||
@@ -16,25 +16,22 @@ import java.util.List;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class QRCodeURL extends QRCodeModel {
|
||||
private static final Logger logger = LoggerFactory.getLogger(QRCodeURL.class);
|
||||
public class URLModel extends QRCodeModel {
|
||||
private static final Logger logger = LoggerFactory.getLogger(URLModel.class);
|
||||
@JsonIgnore
|
||||
private final URLVerificationService urlVerificationService;
|
||||
@JsonIgnore
|
||||
private final URLRepository urlRepository;
|
||||
|
||||
QRCodeURLEntity details;
|
||||
|
||||
public QRCodeURL(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity, URLVerificationService urlVerificationService, URLRepository urlRepository) {
|
||||
URLEntity details;
|
||||
@Autowired
|
||||
public URLModel(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity, URLVerificationService urlVerificationService) {
|
||||
this.scannedQRCode = scannedQRCodeEntity;
|
||||
this.qrCode = qrCodeTypeEntity;
|
||||
this.urlVerificationService = urlVerificationService;
|
||||
this.urlRepository = urlRepository;
|
||||
this.details = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insertDB() {
|
||||
public void setDetails() {
|
||||
String url = scannedQRCode.getContents();
|
||||
try {
|
||||
details = urlVerificationService.breakdownURL(url);
|
||||
@@ -45,7 +42,7 @@ public class QRCodeURL extends QRCodeModel {
|
||||
details.setRedirectChain(redirectChain);
|
||||
|
||||
// Insert into URL table
|
||||
urlRepository.save(details);
|
||||
urlVerificationService.insertDB(details);
|
||||
|
||||
} catch (IOException | URISyntaxException e) {
|
||||
logger.error("Error: ", e);
|
||||
36
src/main/java/com/safeqr/app/qrcode/model/WifiModel.java
Normal file
36
src/main/java/com/safeqr/app/qrcode/model/WifiModel.java
Normal file
@@ -0,0 +1,36 @@
|
||||
package com.safeqr.app.qrcode.model;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.WifiEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.service.WifiVerificationService;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class WifiModel extends QRCodeModel {
|
||||
private static final Logger logger = LoggerFactory.getLogger(WifiModel.class);
|
||||
|
||||
@JsonIgnore
|
||||
private final WifiVerificationService wifiVerificationService;
|
||||
|
||||
WifiEntity details;
|
||||
|
||||
public WifiModel(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity, WifiVerificationService wifiVerificationService) {
|
||||
this.scannedQRCode = scannedQRCodeEntity;
|
||||
this.qrCode = qrCodeTypeEntity;
|
||||
this.wifiVerificationService = wifiVerificationService;
|
||||
this.details = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setDetails() {
|
||||
details = WifiEntity.builder().qrCodeId(scannedQRCode.getId()).build();
|
||||
// Insert into wifi table
|
||||
wifiVerificationService.insertDB(details);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.safeqr.app.qrcode.model.factory;
|
||||
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.model.EmailModel;
|
||||
import com.safeqr.app.qrcode.service.EmailVerificationService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class EmailFactory implements QRCodeFactory<EmailModel> {
|
||||
private final EmailVerificationService emailVerificationService;
|
||||
|
||||
@Autowired
|
||||
public EmailFactory(EmailVerificationService emailVerificationService) {
|
||||
this.emailVerificationService = emailVerificationService;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public EmailModel create(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity) {
|
||||
return new EmailModel(scannedQRCodeEntity, qrCodeTypeEntity, emailVerificationService);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.safeqr.app.qrcode.model.factory;
|
||||
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.model.PhoneModel;
|
||||
import com.safeqr.app.qrcode.service.PhoneVerificationService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class PhoneFactory implements QRCodeFactory<PhoneModel> {
|
||||
private final PhoneVerificationService phoneVerificationService;
|
||||
|
||||
@Autowired
|
||||
public PhoneFactory(PhoneVerificationService phoneVerificationService) {
|
||||
this.phoneVerificationService = phoneVerificationService;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public PhoneModel create(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity) {
|
||||
return new PhoneModel(scannedQRCodeEntity, qrCodeTypeEntity, phoneVerificationService);
|
||||
}
|
||||
}
|
||||
@@ -9,17 +9,21 @@ import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class QRCodeFactoryProvider {
|
||||
private final ApplicationContext applicationContext;
|
||||
@Autowired
|
||||
private ApplicationContext applicationContext;
|
||||
public QRCodeFactoryProvider(ApplicationContext applicationContext) {
|
||||
this.applicationContext = applicationContext;
|
||||
}
|
||||
|
||||
public QRCodeModel createQRCodeInstance(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity) {
|
||||
switch (qrCodeTypeEntity.getType().toUpperCase()) {
|
||||
case "URL":
|
||||
return applicationContext.getBean(QRCodeURLFactory.class).create(scannedQRCodeEntity, qrCodeTypeEntity);
|
||||
case "TEXT":
|
||||
return applicationContext.getBean(QRCodeTextFactory.class).create(scannedQRCodeEntity, qrCodeTypeEntity);
|
||||
default:
|
||||
throw new IllegalArgumentException("Unsupported QR code type: " + qrCodeTypeEntity.getType());
|
||||
}
|
||||
return switch (qrCodeTypeEntity.getType().toUpperCase()) {
|
||||
case "URL" -> applicationContext.getBean(URLFactory.class).create(scannedQRCodeEntity, qrCodeTypeEntity);
|
||||
case "PHONE" -> applicationContext.getBean(PhoneFactory.class).create(scannedQRCodeEntity, qrCodeTypeEntity);
|
||||
case "SMS" -> applicationContext.getBean(SMSFactory.class).create(scannedQRCodeEntity, qrCodeTypeEntity);
|
||||
case "EMAIL" -> applicationContext.getBean(EmailFactory.class).create(scannedQRCodeEntity, qrCodeTypeEntity);
|
||||
case "WIFI" -> applicationContext.getBean(WifiFactory.class).create(scannedQRCodeEntity, qrCodeTypeEntity);
|
||||
case "TEXT" -> applicationContext.getBean(TextFactory.class).create(scannedQRCodeEntity, qrCodeTypeEntity);
|
||||
default -> throw new IllegalArgumentException("Unsupported QR code type: " + qrCodeTypeEntity.getType());
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
package com.safeqr.app.qrcode.model.factory;
|
||||
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.model.QRCodeText;
|
||||
import com.safeqr.app.qrcode.repository.TextRepository;
|
||||
import com.safeqr.app.qrcode.service.TextVerificationService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class QRCodeTextFactory implements QRCodeFactory<QRCodeText> {
|
||||
@Autowired
|
||||
private TextVerificationService textVerificationService;
|
||||
|
||||
@Autowired
|
||||
private TextRepository textRepository;
|
||||
|
||||
@Override
|
||||
public QRCodeText create(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity) {
|
||||
return new QRCodeText(scannedQRCodeEntity, qrCodeTypeEntity, textVerificationService, textRepository);
|
||||
}
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
package com.safeqr.app.qrcode.model.factory;
|
||||
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.model.QRCodeURL;
|
||||
import com.safeqr.app.qrcode.repository.URLRepository;
|
||||
import com.safeqr.app.qrcode.service.URLVerificationService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class QRCodeURLFactory implements QRCodeFactory<QRCodeURL> {
|
||||
@Autowired
|
||||
private URLVerificationService urlVerificationService;
|
||||
|
||||
@Autowired
|
||||
private URLRepository urlRepository;
|
||||
|
||||
@Override
|
||||
public QRCodeURL create(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity) {
|
||||
return new QRCodeURL(scannedQRCodeEntity, qrCodeTypeEntity, urlVerificationService, urlRepository);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.safeqr.app.qrcode.model.factory;
|
||||
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.model.SMSModel;
|
||||
import com.safeqr.app.qrcode.service.SMSVerificationService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class SMSFactory implements QRCodeFactory<SMSModel> {
|
||||
private final SMSVerificationService smsVerificationService;
|
||||
|
||||
@Autowired
|
||||
public SMSFactory(SMSVerificationService smsVerificationService) {
|
||||
this.smsVerificationService = smsVerificationService;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public SMSModel create(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity) {
|
||||
return new SMSModel(scannedQRCodeEntity, qrCodeTypeEntity, smsVerificationService);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.safeqr.app.qrcode.model.factory;
|
||||
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.model.TextModel;
|
||||
import com.safeqr.app.qrcode.service.TextVerificationService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class TextFactory implements QRCodeFactory<TextModel> {
|
||||
private final TextVerificationService textVerificationService;
|
||||
|
||||
@Autowired
|
||||
public TextFactory(TextVerificationService textVerificationService) {
|
||||
this.textVerificationService = textVerificationService;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public TextModel create(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity) {
|
||||
return new TextModel(scannedQRCodeEntity, qrCodeTypeEntity, textVerificationService);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.safeqr.app.qrcode.model.factory;
|
||||
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.model.URLModel;
|
||||
import com.safeqr.app.qrcode.service.URLVerificationService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class URLFactory implements QRCodeFactory<URLModel> {
|
||||
private final URLVerificationService urlVerificationService;
|
||||
|
||||
@Autowired
|
||||
public URLFactory(URLVerificationService urlVerificationService) {
|
||||
this.urlVerificationService = urlVerificationService;
|
||||
}
|
||||
|
||||
@Override
|
||||
public URLModel create(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity) {
|
||||
return new URLModel(scannedQRCodeEntity, qrCodeTypeEntity, urlVerificationService);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.safeqr.app.qrcode.model.factory;
|
||||
|
||||
import com.safeqr.app.qrcode.entity.QRCodeEntity;
|
||||
import com.safeqr.app.qrcode.entity.QRCodeTypeEntity;
|
||||
import com.safeqr.app.qrcode.model.WifiModel;
|
||||
import com.safeqr.app.qrcode.service.WifiVerificationService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class WifiFactory implements QRCodeFactory<WifiModel> {
|
||||
private final WifiVerificationService wifiVerificationService;
|
||||
|
||||
@Autowired
|
||||
public WifiFactory(WifiVerificationService wifiVerificationService) {
|
||||
this.wifiVerificationService = wifiVerificationService;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public WifiModel create(QRCodeEntity scannedQRCodeEntity, QRCodeTypeEntity qrCodeTypeEntity) {
|
||||
return new WifiModel(scannedQRCodeEntity, qrCodeTypeEntity, wifiVerificationService);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user