/** @see de.willuhn.datasource.db.AbstractDBObject#getAttribute(java.lang.String) */ public Object getAttribute(String arg0) throws RemoteException { if ("konto_id".equals(arg0)) return getKonto(); if ("mergedzweck".equals(arg0)) return VerwendungszweckUtil.toString(this); return super.getAttribute(arg0); }
/** @see de.willuhn.datasource.db.AbstractDBObject#insertCheck() */ protected void insertCheck() throws ApplicationException { try { if (getKonto() == null) throw new ApplicationException(i18n.tr("Bitte wählen Sie ein Konto aus.")); if (getKonto().isNewObject()) throw new ApplicationException(i18n.tr("Bitte speichern Sie zunächst das Konto")); if (getGegenkontoNummer() == null || getGegenkontoNummer().length() == 0) throw new ApplicationException( i18n.tr("Bitte geben Sie die Kontonummer des Gegenkontos ein")); if (getGegenkontoBLZ() == null || getGegenkontoBLZ().length() == 0) throw new ApplicationException(i18n.tr("Bitte geben Sie die BLZ des Gegenkontos ein")); // BUGZILLA 280 HBCIProperties.checkChars(getGegenkontoNummer(), HBCIProperties.HBCI_KTO_VALIDCHARS); HBCIProperties.checkChars(getGegenkontoBLZ(), HBCIProperties.HBCI_BLZ_VALIDCHARS); HBCIProperties.checkLength(getGegenkontoNummer(), HBCIProperties.HBCI_KTO_MAXLENGTH_HARD); double betrag = getBetrag(); if (betrag == 0.0 || Double.isNaN(betrag)) throw new ApplicationException(i18n.tr("Bitte geben Sie einen gültigen Betrag ein.")); if (getGegenkontoName() == null || getGegenkontoName().length() == 0) throw new ApplicationException( i18n.tr("Bitte geben Sie den Namen des Kontoinhabers des Gegenkontos ein")); int blzLen = getGegenkontoBLZ().length(); if (blzLen != HBCIProperties.HBCI_BLZ_LENGTH) throw new ApplicationException( i18n.tr( "Ungültige BLZ \"{0}\". Muss {1} Stellen lang sein.", new String[] {getGegenkontoBLZ(), "" + HBCIProperties.HBCI_BLZ_LENGTH})); HBCIProperties.checkLength(getGegenkontoName(), HBCIProperties.HBCI_TRANSFER_NAME_MAXLENGTH); // BUGZILLA 163 HBCIProperties.checkChars(getGegenkontoName(), HBCIProperties.HBCI_DTAUS_VALIDCHARS); if (!HBCIProperties.checkAccountCRC(getGegenkontoBLZ(), getGegenkontoNummer())) throw new ApplicationException( i18n.tr("Ungültige BLZ/Kontonummer. Bitte prüfen Sie Ihre Eingaben.")); if (getZweck() == null || "".equals(getZweck())) throw new ApplicationException(i18n.tr("Bitte geben Sie einen Verwendungszweck ein")); HBCIProperties.checkLength(getZweck(), HBCIProperties.HBCI_TRANSFER_USAGE_MAXLENGTH); HBCIProperties.checkLength(getZweck2(), HBCIProperties.HBCI_TRANSFER_USAGE_MAXLENGTH); HBCIProperties.checkChars(getZweck(), HBCIProperties.HBCI_DTAUS_VALIDCHARS); HBCIProperties.checkChars(getZweck2(), HBCIProperties.HBCI_DTAUS_VALIDCHARS); VerwendungszweckUtil.checkMaxUsage(this); } catch (RemoteException e) { Logger.error("error while checking transfer", e); throw new ApplicationException(i18n.tr("Fehler beim Prüfen des Auftrages.")); } }
/** * @see * de.willuhn.jameica.hbci.rmi.HibiscusTransfer#setWeitereVerwendungszwecke(java.lang.String[]) */ public void setWeitereVerwendungszwecke(String[] list) throws RemoteException { setAttribute("zweck3", VerwendungszweckUtil.merge(list)); }
/** @see de.willuhn.jameica.hbci.rmi.Transfer#getWeitereVerwendungszwecke() */ public String[] getWeitereVerwendungszwecke() throws RemoteException { return VerwendungszweckUtil.split((String) this.getAttribute("zweck3")); }