From 119a99ff49d314cf33b94d1c922f5091a26489d6 Mon Sep 17 00:00:00 2001 From: CGantert345 <57003061+CGantert345@users.noreply.github.com> Date: Mon, 28 Jun 2021 16:54:11 +0200 Subject: - initial implementation of FCB version 3.0.0 - !!Tests still missing!! --- .../ticket/api/asn/omv3/CustomerCardData.java | 297 +++++++++++++++++++++ 1 file changed, 297 insertions(+) create mode 100644 src/main/java/org/uic/barcode/ticket/api/asn/omv3/CustomerCardData.java (limited to 'src/main/java/org/uic/barcode/ticket/api/asn/omv3/CustomerCardData.java') diff --git a/src/main/java/org/uic/barcode/ticket/api/asn/omv3/CustomerCardData.java b/src/main/java/org/uic/barcode/ticket/api/asn/omv3/CustomerCardData.java new file mode 100644 index 0000000..312ec57 --- /dev/null +++ b/src/main/java/org/uic/barcode/ticket/api/asn/omv3/CustomerCardData.java @@ -0,0 +1,297 @@ +/* + * This file was generated by openASN.1 - an open source ASN.1 toolkit for java + * + * openASN.1 is Copyright (C) 2007 Clayton Hoss, Marc Weyland + * + * openASN.1 is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * openASN.1 is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with openASN.1. If not, see . + * + */ +package org.uic.barcode.ticket.api.asn.omv3; + +import java.util.Calendar; +import java.util.Date; + +import org.uic.barcode.asn1.datatypes.Asn1BigInteger; +import org.uic.barcode.asn1.datatypes.Asn1Optional; +import org.uic.barcode.asn1.datatypes.CharacterRestriction; +import org.uic.barcode.asn1.datatypes.FieldOrder; +import org.uic.barcode.asn1.datatypes.HasExtensionMarker; +import org.uic.barcode.asn1.datatypes.IntRange; +import org.uic.barcode.asn1.datatypes.RestrictedString; +import org.uic.barcode.asn1.datatypes.Sequence; +import org.uic.barcode.asn1.datatypesimpl.SequenceOfUnrestrictedLong; + +@Sequence +@HasExtensionMarker +public class CustomerCardData extends Object { + public CustomerCardData() { + } + + @FieldOrder(order = 0) + @Asn1Optional public TravelerType customer; + + @FieldOrder(order = 1) + @RestrictedString(CharacterRestriction.IA5String) + @Asn1Optional public String cardIdIA5; + + @FieldOrder(order = 2) + @Asn1Optional public Asn1BigInteger cardIdNum; + + @FieldOrder(order = 3) + @IntRange(minValue=2016,maxValue=2269) + @Asn1Optional public Long validFromYear; + + @FieldOrder(order = 4) + @IntRange(minValue=0,maxValue=700) + @Asn1Optional public Long validFromDay; + + @FieldOrder(order = 5) + @IntRange(minValue=0,maxValue=250) + @Asn1Optional public Long validUntilYear; + + @FieldOrder(order = 6) + @IntRange(minValue=0,maxValue=370) + @Asn1Optional public Long validUntilDay; + + @FieldOrder(order = 7) + @Asn1Optional public TravelClassType classCode; + + @FieldOrder(order = 8) + @IntRange(minValue=0,maxValue=1000) + @Asn1Optional public Long cardType; + + @FieldOrder(order = 9) + @RestrictedString(CharacterRestriction.UTF8String) + @Asn1Optional public String cardTypeDescr; + + @FieldOrder(order = 10) + @Asn1Optional public Asn1BigInteger customerStatus; + + @FieldOrder(order = 11) + @Asn1Optional public String customerStatusDescr; + + @FieldOrder(order = 12) + @Asn1Optional public SequenceOfUnrestrictedLong includedServices; + + @FieldOrder(order = 13) + @Asn1Optional public ExtensionData extension; + + + + + public TravelerType getCustomer() { + + return this.customer; + } + + public String getCardIdIA5() { + + return this.cardIdIA5; + } + + public Asn1BigInteger getCardIdNum() { + + return this.cardIdNum; + } + + public Long getValidFromYear() { + + return this.validFromYear; + } + + public Long getValidFromDay() { + + return this.validFromDay; + } + + public Long getValidUntilYear() { + + return this.validUntilYear; + } + + public Long getValidUntilDay() { + + return this.validUntilDay; + } + + public TravelClassType getClassCode() { + + return this.classCode; + } + + public Long getCardType() { + + return this.cardType; + } + + public String getCardTypeDescr() { + + return this.cardTypeDescr; + } + + public Long getCustomerStatus() { + + return Asn1BigInteger.toLong(this.customerStatus); + } + + public String getCustomerStatusDescr() { + + return this.customerStatusDescr; + } + + public SequenceOfUnrestrictedLong getIncludedServices() { + + return this.includedServices; + } + + public ExtensionData getExtension() { + + return this.extension; + } + + public void setCustomer(TravelerType customer) { + + this.customer = customer; + } + + public void setCardIdIA5(String cardIdIA5) { + + this.cardIdIA5 = cardIdIA5; + } + + public void setCardIdNum(Asn1BigInteger cardIdNum) { + + this.cardIdNum = cardIdNum; + } + + public void setCardIdNum(Long cardIdNum) { + + this.cardIdNum = new Asn1BigInteger(cardIdNum); + } + + public void setValidFromYear(Long validFromYear) { + + this.validFromYear = validFromYear; + } + + public void setValidFromDay(Long validFromDay) { + + this.validFromDay = validFromDay; + } + + public void setValidUntilYear(Long validUntilYear) { + + this.validUntilYear = validUntilYear; + } + + public void setValidUntilDay(Long validUntilDay) { + + this.validUntilDay = validUntilDay; + } + + public void setClassCode(TravelClassType classCode) { + + this.classCode = classCode; + } + + public void setCardType(Long cardType) { + + this.cardType = cardType; + } + + public void setCardTypeDescr(String cardTypeDescr) { + + this.cardTypeDescr = cardTypeDescr; + } + + public void setCustomerStatus(Long customerStatus) { + + this.customerStatus = Asn1BigInteger.toAsn1(customerStatus); + } + + public void setCustomerStatusDescr(String customerStatusDescr) { + + this.customerStatusDescr = customerStatusDescr; + } + + public void setIncludedServices(SequenceOfUnrestrictedLong includedServices) { + + this.includedServices = includedServices; + } + + public void setExtension(ExtensionData extension) { + + this.extension = extension; + } + + public void setValidity (Date fromDate , Date untilDate){ + + Calendar fromCal = Calendar.getInstance(); + fromCal.clear(); + fromCal.setTime(fromDate); + + this.validFromYear = new Long( fromCal.get(Calendar.YEAR)); + this.validFromDay = new Long (fromCal.get(Calendar.DAY_OF_YEAR)); + + if (untilDate == null) return; + + Calendar untilCal = Calendar.getInstance(); + untilCal.clear(); + untilCal.setTime(untilDate); + + int untildays = untilCal.get(Calendar.DAY_OF_YEAR); + + int yearDiff = untilCal.get(Calendar.YEAR) - fromCal.get(Calendar.YEAR); + + this.validUntilYear = new Long( yearDiff); + this.validUntilDay = new Long (untildays); + + } + + public Date getValidFromDate (){ + + if (this.validFromYear == null || this.validFromDay == null) return null; + + Calendar cal = Calendar.getInstance(); + cal.clear(); + //cal.setTimeZone(TimeZone.getTimeZone("UTC")); + cal.set(Calendar.YEAR, this.validFromYear.intValue()); + cal.set(Calendar.DAY_OF_YEAR, this.validFromDay.intValue()); + cal.set(Calendar.MINUTE,0); + cal.set(Calendar.HOUR_OF_DAY,0); + return cal.getTime(); + + } + + + public Date getValidUntilDate (){ + + if (this.validUntilYear == null || this.validUntilDay == null) return null; + + Calendar cal = Calendar.getInstance(); + cal.clear(); + //cal.setTimeZone(TimeZone.getTimeZone("UTC")); + cal.set(Calendar.YEAR, this.validFromYear.intValue()); + if (this.validUntilYear != null) { + cal.add(Calendar.YEAR, this.validUntilYear.intValue()); + } + cal.set(Calendar.DAY_OF_YEAR, this.validUntilDay.intValue()); + cal.set(Calendar.MINUTE,59); + cal.set(Calendar.HOUR_OF_DAY,23); + return cal.getTime(); + + } + + +} -- cgit v1.2.3