summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/uic/barcode/ssbFrame/SsbTicketPart.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/uic/barcode/ssbFrame/SsbTicketPart.java')
-rw-r--r--src/main/java/org/uic/barcode/ssbFrame/SsbTicketPart.java29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/main/java/org/uic/barcode/ssbFrame/SsbTicketPart.java b/src/main/java/org/uic/barcode/ssbFrame/SsbTicketPart.java
new file mode 100644
index 0000000..3855c5c
--- /dev/null
+++ b/src/main/java/org/uic/barcode/ssbFrame/SsbTicketPart.java
@@ -0,0 +1,29 @@
+package org.uic.barcode.ssbFrame;
+
+import org.uic.barcode.ticket.EncodingFormatException;
+
+public abstract class SsbTicketPart {
+
+ public void decode(byte[] bytes) throws EncodingFormatException {
+ if (bytes.length != 114) {
+ throw new EncodingFormatException("Data size does not fit to SSB");
+ }
+ decodeContent(bytes);
+ };
+
+ protected abstract void decodeContent(byte[] bytes);
+
+ public void encode(byte[] bytes) throws EncodingFormatException {
+ if (bytes.length != 114) {
+ throw new EncodingFormatException("Data size does not fit to SSB");
+ }
+ encodeContent(bytes);
+ }
+
+ protected abstract void encodeContent(byte[] bytes);
+
+
+
+
+
+}