SantanderPdfExtractor
, TargoBankPdfExtract
public abstract class AbstractPdfExtractor
extends java.lang.Object
Modifier and Type | Field | Description |
---|---|---|
protected java.util.List<PdfEintrag> |
buchungsDaten |
List of effective dates for entries
|
protected org.apache.pdfbox.pdmodel.PDDocument |
document |
Das PDF Document
|
protected java.lang.String |
kartenNummer |
Die Kreditkartennummer
|
protected static int |
MAX_ONE_WORD |
Threshold PDFBox value for keeping one word in one line.
|
protected static int |
MAX_TWO_WORD |
Threshold PDFBox value for keeping 2 words in one line.
|
protected java.text.NumberFormat |
numFormat |
Dezimalformatierer des Saldos
|
protected java.lang.String |
rechungsDatum |
Date of the bank statement
|
protected static java.lang.String |
WORT_DELIMITER |
The delimiter in the return string from the PDFBox extraction separating
the positions and description values.
|
protected static int |
WORT_INFO_LENGTH |
Ein extrahiertes Wort muss genau 3 Felder haben: PosX, PosY und das
eigentliche Wort.
|
Constructor | Description |
---|---|
AbstractPdfExtractor(byte[] byteArray,
java.lang.String kartenNummer) |
Constructs a new extractor with a byte array for teh given card number.
|
AbstractPdfExtractor(java.io.InputStream inputStream,
java.lang.String kartenNummer) |
Abstracter Konstruktor mit Angabe des PDF inputStreams und der
Kartennummer.
|
Modifier and Type | Method | Description |
---|---|---|
protected abstract void |
addYear(java.util.List<PdfEintrag> entries) |
Adds the year to each entry as this is might be not enclosed in the PDF
bank statement entries.
|
void |
close() |
Schließt das PDF Dokument
|
protected abstract AbstractBankPDFPage |
getBankPdfPageEven() |
Liefert die PDFPage der geraden Seiten des Auszugs.
|
protected abstract AbstractBankPDFPage |
getBankPdfPageFirst() |
Liefert die PDFPage der ersten Seite des Auszugs.
|
protected abstract AbstractBankPDFPage |
getBankPdfPageOdd() |
Liefert die PDFPage der ungeraden Seiten des Auszugs.
|
protected java.util.List<PdfEintrag> |
getBetraege(AbstractBankPDFPage textAreas) |
Liefert die Beträge der Umsä auf dem PDF
|
java.lang.String |
getBic(AbstractBankPDFPage textAreas) |
Liefert die BIC des PDF-Auszuges
|
java.util.List<PdfBuchung> |
getExtract() |
Extracts all entries from the PDF bank statement and returns them in as a
PdfBuchung list.
|
protected java.util.List<PdfEintrag> |
getFremdwaehrungen(AbstractBankPDFPage textAreas) |
Liefert die Fremdwährungen.
|
protected java.util.List<PdfEintrag> |
getFremdwaehrungsBetraege(AbstractBankPDFPage textAreas) |
Liefert den Fremdwährungbetrag.
|
java.lang.String |
getIban(AbstractBankPDFPage textAreas) |
Liefert die IBAN des PDF-Auszuges
|
protected java.lang.String |
getKarteninhaber(AbstractBankPDFPage textAreas) |
Liefert den Karteninhaber des PDF-Auszuges
|
protected java.lang.String |
getKartenkonto(AbstractBankPDFPage textAreas) |
Liefert das Kartenkonto des PDF-Auszuges
|
protected abstract int |
getLastPage() |
Liefert die letzte Seite mit Umsätzen
|
protected abstract java.text.NumberFormat |
getNumberFormat() |
Liefert das NumberFormat zum Parsen des Saldos.
|
protected java.math.BigDecimal |
getSaldo(AbstractBankPDFPage textAreas) |
Liefert das Saldo des Auszuges
|
protected abstract AbstractTransactionCreator |
getTransactionCreator() |
Liefert den konkreten TransactionCreator der Bank.
|
protected abstract void |
removeAnnotations(java.util.List<PdfEintrag> eintragsListe) |
Hier kann eine konkrete Implementierung noch Änderungen an der
anderen Listen vornehmen.
|
protected abstract void |
removeAnnotationsBookingDates(java.util.List<PdfEintrag> buchungenDatum) |
Hier kann eine konkrete Implementierung noch Änderungen an der Liste
der Buchungsdaten vornehmen.
|
protected abstract void |
reOrder(java.util.List<PdfBuchung> buchungen) |
Here a concrete implementation can add an order mechanism to the
transaction list before the saldo is calculated.
|
protected static final int MAX_ONE_WORD
protected static final int MAX_TWO_WORD
protected static final java.lang.String WORT_DELIMITER
protected static final int WORT_INFO_LENGTH
protected java.lang.String rechungsDatum
protected java.util.List<PdfEintrag> buchungsDaten
protected final java.text.NumberFormat numFormat
protected org.apache.pdfbox.pdmodel.PDDocument document
protected final java.lang.String kartenNummer
public AbstractPdfExtractor(byte[] byteArray, java.lang.String kartenNummer)
byteArray
- kartenNummer
- public AbstractPdfExtractor(java.io.InputStream inputStream, java.lang.String kartenNummer)
inputStream
- das PDF als inputStream.kartenNummer
- die Kartennummer gegen die das PDF geprüft wird.public void close()
public java.lang.String getBic(AbstractBankPDFPage textAreas)
textAreas
- die Textarea in der die BIC-Position definiert ist.public java.util.List<PdfBuchung> getExtract() throws InvalidCardNumber
InvalidCardNumber
public java.lang.String getIban(AbstractBankPDFPage textAreas)
textAreas
- die Textarea in der die IBAN-Position definiert ist.protected abstract void addYear(java.util.List<PdfEintrag> entries)
entries
- protected abstract AbstractBankPDFPage getBankPdfPageEven() throws java.io.IOException
java.io.IOException
protected abstract AbstractBankPDFPage getBankPdfPageFirst() throws java.io.IOException
java.io.IOException
protected abstract AbstractBankPDFPage getBankPdfPageOdd() throws java.io.IOException
java.io.IOException
protected java.util.List<PdfEintrag> getBetraege(AbstractBankPDFPage textAreas)
textAreas
- die TextAre ader Beträge.protected java.util.List<PdfEintrag> getFremdwaehrungen(AbstractBankPDFPage textAreas)
textAreas
- Der Textbereich mit den Fremdwährungen.protected java.util.List<PdfEintrag> getFremdwaehrungsBetraege(AbstractBankPDFPage textAreas)
textAreas
- Der Textbereich mit den Fremdwährungsbeträgen.protected java.lang.String getKarteninhaber(AbstractBankPDFPage textAreas)
textAreas
- die TextArea mit dem Karteninhaberprotected java.lang.String getKartenkonto(AbstractBankPDFPage textAreas)
textAreas
- die TextArea mit der Kartenkontoprotected abstract int getLastPage() throws java.io.IOException
java.io.IOException
protected abstract java.text.NumberFormat getNumberFormat()
protected java.math.BigDecimal getSaldo(AbstractBankPDFPage textAreas)
textAreas
- die textArea mit dem Saldoprotected abstract AbstractTransactionCreator getTransactionCreator()
protected abstract void removeAnnotations(java.util.List<PdfEintrag> eintragsListe)
eintragsListe
- protected abstract void removeAnnotationsBookingDates(java.util.List<PdfEintrag> buchungenDatum)
buchungenDatum
- protected abstract void reOrder(java.util.List<PdfBuchung> buchungen)
buchungen
-