package org.uic.barcode.ssbFrame; import org.uic.barcode.asn1.uper.BitBuffer; import org.uic.barcode.asn1.uper.ByteBitBuffer; public class SsbGroup extends SsbCommonTicketPart { protected int firstDayOfValidity = 0; protected int lastDayOfValidity = 0; protected boolean isReturnJourney = false; private int infoCode = 0; private String text = null; private SsbStations stations = new SsbStations(); private String groupName = null; private int counterMarkNumber = 0; @Override protected void decodeContent(byte[] bytes) { int offset = decodeCommonPart(bytes); BitBuffer bits = new ByteBitBuffer(bytes); isReturnJourney = bits.get(offset); offset = offset++; firstDayOfValidity = bits.getInteger(offset, 9); offset = offset + 9; lastDayOfValidity = bits.getInteger(offset, 9); offset = offset + 9; offset = stations.decode(offset, bytes); groupName = bits.getChar6String(offset, 72); offset = offset + 72; counterMarkNumber = bits.getInteger(offset, 9); offset = offset + 9; infoCode = bits.getInteger(offset, 14); offset = offset + 14; text = bits.getChar6String(offset, 222); offset = offset + 222; } @Override protected void encodeContent(byte[] bytes) { int offset = encodeCommonPart(bytes); BitBuffer bits = new ByteBitBuffer(bytes); bits.put(offset, isReturnJourney); offset = offset++; bits.putInteger(offset, 9, firstDayOfValidity); offset = offset + 9; bits.putInteger(offset, 9, lastDayOfValidity); offset = offset + 9; offset = stations.decode(offset, bytes); bits.putChar6String(offset, 72,groupName); offset = offset + 72; bits.putInteger(offset, 9,counterMarkNumber); offset = offset + 9; bits.putInteger(offset, 14, infoCode); offset = offset + 14; bits.putChar6String(offset, 144, text); offset = offset + 222; } public int getFirstDayOfValidity() { return firstDayOfValidity; } public void setFirstDayOfValidity(int firstDayOfValidity) { this.firstDayOfValidity = firstDayOfValidity; } public int getLastDayOfValidity() { return lastDayOfValidity; } public void setLastDayOfValidity(int lastDayOfValidity) { this.lastDayOfValidity = lastDayOfValidity; } public boolean isReturnJourney() { return isReturnJourney; } public void setReturnJourney(boolean isReturnJourney) { this.isReturnJourney = isReturnJourney; } public int getInfoCode() { return infoCode; } public void setInfoCode(int infoCode) { this.infoCode = infoCode; } public String getText() { return text; } public void setText(String text) { this.text = text; } public SsbStations getStations() { return stations; } public String getGroupName() { return groupName; } public void setGroupName(String groupName) { this.groupName = groupName; } public int getCounterMarkNumber() { return counterMarkNumber; } public void setCounterMarkNumber(int counterMarkNumber) { this.counterMarkNumber = counterMarkNumber; } }