Seitenhistorie
...
Außerdem stellen die Fassaden Wrapper-Methoden bereit, die die tatsächlich verwendeten Businessobjekte auf die in Abschnitt 4.8.1. definierten Wrapper-Objekte umwandeln.
Diese Methoden sind von Ihnen im Normalfall nicht anzupassen, sofern Sie die Wrapper-Klassen aus dem SEPA-Nuclet verwenden.
Bei der Anbindung des SEPA-Nuclets sind die folgende Fassadenklassen für Debitoren, Referenzen und Zahlungsreferenzen anzupassen (die Klassen befinden sich alle im Java-Package org.nuclet.sepa.facade):
Fassaden-Klasse | Anmerkung | Funktion | Anwendungsfall |
---|---|---|---|
CreditorFacade | neu ab v2.0.0 |
| Überweisungen |
CreditorReferenceFacade | neu ab v2.0.0 |
| |
CreditTransferReferenceFacade | neu ab v2.0.0 |
| |
DebitorFacade | neu ab v2.0.0 |
| Lastschriften |
DebitorReferenceFacade | neu ab v2.0.0 |
| |
DirectDebitReferenceFacade | neu ab v2.0.0 |
| |
wird ab v2.0.0 ersetzt durch DebitorReferenceFacade | obsolet |
| |
wird ab v2.0.0 ersetzt durch DirectDebitReferenceFacade | obsolet |
|
Tabelle 4.8.2: Übersicht, Anpassungen in Fassaden-Klassen
4.7.2.1 CreditorFacade
In der Klasse CreditorFacade muss eine Methode implementiert werden:
...
Hinweis |
---|
Bitte beachten Sie außerdem, dass das generische "<T>" in den Zeilen 35 und 66 entsprechend ersetzt werden muss. |
Codeblock | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
package org.nuclet.sepa.facade; import java.util.ArrayList; import java.util.List; import org.nuclos.api.businessobject.BusinessObject; import org.nuclos.api.businessobject.facade.Modifiable; import org.nuclos.api.exception.BusinessException; import org.nuclet.sepa.facade.AbstractCreditorReferenceFacade; import org.nuclet.sepa.wrapper.AbstractCreditorReferenceWrapper; import org.nuclet.sepa.wrapper.CreditorReferenceWrapper; // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen! // // import org.nuclet.businesstemplate.SupplierBilling; /** * Facade for Business Objects of type "Creditor Reference" * * * @version 1.0 * @date 02.02.2015 * @nuclet org.nuclet.SEPA * @nucletversion 2.0.0 * @sincenucletversion 2.0.0 * @since 02.02.2015 * * @author frank.lehmann@nuclos.de * */ public class CreditorReferenceFacade<T extends BusinessObject & Modifiable> extends AbstractCreditorReferenceFacade<T> // @replace public class<ClientBilling> getWrappedClass() { private static final CreditorReferenceFacade instance = new CreditorReferenceFacade(); /** * Liefert die Singleton-Instanz dieser Klasse * */ public static CreditorReferenceFacade getInstance() { return instance; } /** * Wrap the actual reference objects inside an <code>AbstractCreditorReferenceWrapper</code> * * @return the actual reference objects, wrapped inside an <code>AbstractCreditorReferenceWrapper</code> * */ public AbstractCreditorReferenceWrapper getWrapper(final Modifiable boReference) { return new CreditorReferenceWrapper(boReference); } /** * Get the class of the actual reference objects, i.e. the class wrapped by <code>CreditorReferenceWrapper</code> * * @return the class of the actual reference objects, i.e. the class wrapped by <code>CreditorReferenceWrapper</code> * */ public Class<T> getWrappedClass() // @replace public class<SupplierBilling> getWrappedClass() { // @replace! // // return SupplierBilling.class; return null; } } |
...
4.7.2.3 CreditTransferReferenceFacade
...
Hinweis |
---|
Bitte beachten Sie außerdem, dass das generische "<T>" in den Zeilen 39 und 70 entsprechend ersetzt werden muss. |
Codeblock | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
package org.nuclet.sepa.facade; import java.util.ArrayList; import java.util.List; import org.nuclos.api.businessobject.BusinessObject; import org.nuclos.api.businessobject.facade.Modifiable; import org.nuclos.api.businessobject.attribute.ForeignKeyAttribute; import org.nuclos.api.exception.BusinessException; import org.nuclet.sepa.facade.AbstractCreditTransferReferenceFacade; import org.nuclet.sepa.wrapper.AbstractCreditTransferReferenceWrapper; import org.nuclet.sepa.wrapper.CreditTransferReferenceWrapper; // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen! // // Beispiel: // // import org.nuclet.businesstemplate.SupplierBillingPosition; /** * Facade for Business Objects of type "CreditTransferReference" * * @note replaces the original class PaymentReferenceFacade * * @version 1.0 * @date 02.02.2015 * @nuclet org.nuclet.SEPA * @nucletversion 2.0.0 * @sincenucletversion 2.0.0 * @since 02.02.2015 * * @author frank.lehmann@nuclos.de * */ public class CreditTransferReferenceFacade<T extends BusinessObject & Modifiable> extends AbstractCreditTransferReferenceFacade<T> // @replace! AbstractCreditTransferReferenceFacade<SupplierBillingPosition> { private static final CreditTransferReferenceFacade instance = new CreditTransferReferenceFacade(); /** * Liefert die Singleton-Instanz dieser Klasse * */ public static CreditTransferReferenceFacade getInstance() { return instance; } /** * Wrap the actual payment reference objects inside an <code>AbstractCreditTransferReferenceWrapper</code> * * @return the actual payment reference objects, wrapped inside an <code>AbstractCreditTransferReferenceWrapper</code> * */ public AbstractCreditTransferReferenceWrapper getWrapper(final Modifiable boDirectDebitReference) { return new CreditTransferReferenceWrapper(boDirectDebitReference); } /** * Get the class of the actual payment reference objects, i.e. the class wrapped by <code>CreditTransferReferenceWrapper</code> * * @return the class of the actual payment reference objects, i.e. the class wrapped by <code>CreditTransferReferenceWrapper</code> * */ public Class<T> getWrappedClass() // @replace! public Class<SupplierBillingPosition> getWrappedClass() { // @replace! // // return SupplierBillingPosition.class; return null; } /** * Get the attribue, that identifies the SEPA transaction * * @return the attribue, that identifies the SEPA transaction * */ protected ForeignKeyAttribute<Long> getSEPATransactionIdAttribute() { // @replace! // // return SupplierBillingPosition.SEPATransactionId; return null; } } |
...
4.7.2.4 DebitorFacade
In der Klasse DebitorFacade muss eine Methode implementiert werden:
...
Codeblock | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
package org.nuclet.sepa.facade; import java.util.ArrayList; import java.util.List; import org.nuclos.api.businessobject.BusinessObject; import org.nuclos.api.businessobject.facade.Modifiable; import org.nuclos.api.businessobject.attribute.ForeignKeyAttribute; import org.nuclos.api.exception.BusinessException; import org.nuclet.sepa.facade.AbstractDirectDebitReferenceFacade; import org.nuclet.sepa.wrapper.AbstractDirectDebitReferenceWrapper; import org.nuclet.sepa.wrapper.DirectDebitReferenceWrapper; // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen! // // Beispiel: // // import org.nuclet.businesstemplate.ClientBillingPosition; /** * Facade for Business Objects of type "DirectDebitReference" * * @note replaces the original class PaymentReferenceFacade * * @version 1.0 * @date 30.01.2015 * @nuclet org.nuclet.SEPA * @nucletversion 2.0.0 * @sincenucletversion 2.0.0 * @since 30.01.2015 * * @author frank.lehmann@nuclos.de * */ public class DirectDebitReferenceFacade<T extends BusinessObject & Modifiable> extends AbstractDirectDebitReferenceFacade<T> // @replace! AbstractPaymentReferenceFacade<ClientBillingPosition> { private static final DirectDebitReferenceFacade instance = new DirectDebitReferenceFacade(); /** * Liefert die Singleton-Instanz dieser Klasse * */ public static DirectDebitReferenceFacade getInstance() { return instance; } /** * Wrap the actual payment reference objects inside an <code>AbstractDirectDebitReferenceWrapper</code> * * @return the actual payment reference objects, wrapped inside an <code>AbstractDirectDebitReferenceWrapper</code> * */ public AbstractDirectDebitReferenceWrapper getWrapper(final Modifiable boDirectDebitReference) { return new DirectDebitReferenceWrapper(boDirectDebitReference); } /** * Get the class of the actual payment reference objects, i.e. the class wrapped by <code>DirectDebitReferenceWrapper</code> * * @return the class of the actual payment reference objects, i.e. the class wrapped by <code>DirectDebitReferenceWrapper</code> * */ public Class<T> getWrappedClass() // @replace! public Class<ClientBillingPosition> getWrappedClass() { // @replace! // // return ClientBillingPosition.class; return null; } /** * Get the attribue, that identifies the SEPA transaction * * @return the attribue, that identifies the SEPA transaction * */ protected ForeignKeyAttribute<Long> getSEPATransactionIdAttribute() { // @replace! // // return ClientBillingPosition.SEPAPaymentInformation; return null; } } |
...