From fbbc6349283bc8958cad51534da9cb82c46210c9 Mon Sep 17 00:00:00 2001 From: CGantert345 <57003061+CGantert345@users.noreply.github.com> Date: Wed, 15 Dec 2021 16:37:37 +0100 Subject: api layer for dynamic content --- .../api/SimpleUicDynamicContent.java | 150 +++++++++++++++++++++ 1 file changed, 150 insertions(+) create mode 100644 src/main/java/org/uic/barcode/dynamicContent/api/SimpleUicDynamicContent.java (limited to 'src/main/java/org/uic/barcode/dynamicContent/api/SimpleUicDynamicContent.java') diff --git a/src/main/java/org/uic/barcode/dynamicContent/api/SimpleUicDynamicContent.java b/src/main/java/org/uic/barcode/dynamicContent/api/SimpleUicDynamicContent.java new file mode 100644 index 0000000..ca5880d --- /dev/null +++ b/src/main/java/org/uic/barcode/dynamicContent/api/SimpleUicDynamicContent.java @@ -0,0 +1,150 @@ +package org.uic.barcode.dynamicContent.api; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +import org.uic.barcode.ticket.api.impl.SimpleExtension; +import org.uic.barcode.ticket.api.spec.IExtension; +import org.uic.barcode.ticket.api.spec.IGeoCoordinate; + +public class SimpleUicDynamicContent implements IUicDynamicContent { + + + protected String appId; + + protected Date timeStamp; + + protected String challenge; + + protected IGeoCoordinate geoCoordinate; + + protected IExtension dynamicContentExtension; + + protected List dynamicContentResponseList; + + + + public String getAppId() { + return appId; + } + + public void setAppId(String appId) { + this.appId = appId; + } + + + public IGeoCoordinate getGeoCoordinate() { + return geoCoordinate; + } + + public void setGeoCoordinate(IGeoCoordinate geoCoordinate) { + this.geoCoordinate = geoCoordinate; + } + + public IExtension getDynamicContentExtension() { + return dynamicContentExtension; + } + + public void setDynamicContentExtension(IExtension dynamicContentExtension) { + this.dynamicContentExtension = dynamicContentExtension; + } + + + @Override + public Date getTimeStamp() { + return timeStamp; + } + + @Override + public void setTimeStamp(Date date) { + timeStamp = date; + + } + + @Override + public IExtension getExtension() { + return dynamicContentExtension; + } + + @Override + public void setExtension(IExtension extension) { + dynamicContentExtension = extension; + } + + @Override + public String getChallengeString() { + return challenge; + } + + @Override + public void setChallengeString(String challenge) { + this.challenge = challenge; + } + + @Override + public byte[] getPhoneIdHash() { + return getExtensionData("phone"); + } + + @Override + public void setPhoneIdHash(byte[] phoneIdHash) { + if (dynamicContentResponseList == null) { + dynamicContentResponseList = new ArrayList(); + } + + IExtension e = new SimpleExtension(); + e.setBinarydata(phoneIdHash); + e.setId("phone"); + getDynamicContentResponseList().add(e); + } + + @Override + public byte[] getPassIdHash() { + return getExtensionData("pass"); + } + + private byte[] getExtensionData(String name) { + if (dynamicContentResponseList == null) return null; + for (IExtension e : dynamicContentResponseList) { + if (e.getId().equals(name)){ + return e.getBinarydata(); + } + } + return null; + } + + @Override + public void setPassIdHash(byte[] passIdHash) { + if (dynamicContentResponseList == null) { + dynamicContentResponseList = new ArrayList(); + } + + IExtension e = new SimpleExtension(); + e.setBinarydata(passIdHash); + e.setId("pass"); + getDynamicContentResponseList().add(e); + } + + @Override + public List getDynamicContentResponseList() { + if (dynamicContentResponseList == null) { + dynamicContentResponseList = new ArrayList(); + } + + return dynamicContentResponseList; + } + + @Override + public void addDynamicContentResponse(IExtension challenge) { + + if (this.dynamicContentResponseList == null) { + this.dynamicContentResponseList = new ArrayList(); + } + + this.dynamicContentResponseList.add(challenge); + + } + + +} -- cgit v1.2.3