Seitenhistorie
...
Tabelle 4.8.2: Übersicht, Anpassungen in Fassaden-Klassen
4.7.2.1
...
CreditorFacade
In der Klasse DebitorFacade CreditorFacade muss eine Methode implementiert werden:
- getWrappedClass() sollte die Java-Klasse des verwendeten Debitorenobjektes Kreditorenobjektes zurückgeben
Ein Beispiel dazu ist jeweils in einem Kommentarblock angegeben, dieses Beispiel ist an das tatsächlich genutzte Debitorenbusinessobjekt (bzw. dessen BusinessObject-Klasse) anzupassen.
Hinweis |
---|
Bitte beachten Sie außerdem, dass das generische "<T>" in den Zeilen 36 37 und 84 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.context.UpdateContext; import org.nuclos.api.exception.BusinessException; import org.nuclet.sepa.facade.AbstractCreditorFacade; import org.nuclet.sepa.wrapper.AbstractDebitorWrapperAbstractCreditorWrapper; import org.nuclet.sepa.wrapper.DebitorWrapperCreditorWrapper; // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen! // // Beispiel: // // import org.nuclet.businesstemplate.ClientSupplier; /** * Facade for Business Objects of type "DebitorCreditor" * * @version 1.0 * @date 2130.0301.20142015 * @nuclet org.nuclet.SEPA * @nucletversion 12.0.0 * @sincenucletversion 12.0.0 * @since 2130.0301.20142015 * * @author frank.lehmann@nuclos.de * */ public class DebitorFacade<TCreditorFacade<T extends BusinessObject & Modifiable> extends AbstractDebitorFacade<T>AbstractCreditorFacade<T> // replace! AbstractDebitorFacade<Client>AbstractCreditorFacade<Supplier> { private static final DebitorFacadeCreditorFacade instance = new DebitorFacadeCreditorFacade(); /** * Liefert die Singleton-Instanz dieser Klasse * */ public static DebitorFacadeCreditorFacade getInstance() { return instance; } /** * Wrap /** * Wrap the context'the context's actual reference objects inside an <code>AbstractReferenceWrapper</code> * * @param context A given <code>UpdateContext</code> * * @return the context's actual reference object, wrapped inside an <code>AbstractReferenceWrapper</code> * */ public public AbstractDebitorWrapper getDebitorWrapperAbstractCreditorWrapper getWrapper(final UpdateContext context) { return new DebitorWrapperCreditorWrapper(context.getBusinessObject(getWrappedClass())); } /** * Wrap the actual reference object inside an <code>AbstractReferenceWrapper</code> * * @param boDebitorboCreditor The actual reference object * * * * @return the actual reference object, wrapped inside an <code>AbstractReferenceWrapper</code> * */ public AbstractDebitorWrapperAbstractCreditorWrapper getDebitorWrappergetWrapper(final Modifiable boDebitorboCreditor) { return new DebitorWrapperCreditorWrapper(boDebitorboCreditor); } /** * Get the class of the actual reference objects, i.e. the class wrapped by <code>DebitorWrapper<<code>CreditorWrapper</code> * * @return * @return the class of the actual reference objects, i.e. the class wrapped by <code>DebitorWrapper<<code>CreditorWrapper</code> * */ public Class<T> getWrappedClass() // @replace! public class<Client>class<Supplier> getWrappedClass() { // @replace! // // return ClientSupplier.class; return null; } } } |
4.7.2.
...
4 DebitorFacade
In der Klasse ReferenceFacade DebitorFacade muss ebenfalls nur eine Methode implementiert werden:
- getWrappedClass() sollte die Java-Klasse des verwendeten Referenzobjektes Debitorenobjektes zurückgeben
Ein Beispiel dazu ist jeweils in einem Kommentarblock angegeben, dieses Beispiel ist an das tatsächlich genutzte Referenzbusinessobjekt Debitorenbusinessobjekt (bzw. dessen BusinessObject-Klasse) anzupassen.
Hinweis |
---|
Bitte beachten Sie außerdem, dass das generische "<T>" in den Zeilen 33 36 und 65 84 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.context.UpdateContext; import org.nuclos.api.exception.BusinessException; import org.nuclet.sepa.facade.AbstractDebitorFacade; import org.nuclet.sepa.wrapper.AbstractReferenceWrapperAbstractDebitorWrapper; import org.nuclet.sepa.wrapper.ReferenceWrapperDebitorWrapper; // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen! // // Beispiel: // // import org.nuclet.businesstemplate.ClientBillingClient; /** * Facade for Business Objects of type "ReferenceDebitor" * * @version 1.0 * @date 21.03.2014 * @nuclet org.nuclet.SEPA * @nucletversion 1.01.04 * @sincenucletversion 1.0.0 * @since 21.03.2014 * * @author frank.lehmann@nuclos.de * */ public class ReferenceFacade<TDebitorFacade<T extends BusinessObject & Modifiable> extends AbstractReferenceFacade<T>AbstractDebitorFacade<T> // @replace public class<ClientBilling> getWrappedClass()replace! AbstractDebitorFacade<Client> { private static final ReferenceFacadeDebitorFacade instance = new ReferenceFacadeDebitorFacade(); /** * Liefert die Singleton-Instanz dieser Klasse * */ public static ReferenceFacadeDebitorFacade getInstance() { return instance; } /** * Wrap the context's actual reference objects inside an <code>AbstractReferenceWrapper</code> * * @return@param thecontext actualA reference objects, wrapped inside an <code>AbstractReferenceWrapper<given <code>UpdateContext</code> * * @return the context's actual reference object, wrapped inside an <code>AbstractReferenceWrapper</code> * */ public AbstractDebitorWrapper getWrapper(final UpdateContext context) { return new DebitorWrapper(context.getBusinessObject(getWrappedClass())); } /** * Wrap the actual reference object inside an <code>AbstractReferenceWrapper</code> * * @param boDebitor The actual reference object * * @return the actual reference object, wrapped inside an <code>AbstractReferenceWrapper</code> * */ public AbstractDebitorWrapper getWrapper(final Modifiable boDebitor) { return new DebitorWrapper(boDebitor); } /** * Get the class of the actual reference objects, i.e. the class wrapped by <code>DebitorWrapper</code> * * @return the class of the actual reference objects, i.e. the class wrapped by <code>DebitorWrapper</code> * */ public Class<T> getWrappedClass() // @replace! public class<Client> getWrappedClass() { // @replace! // // return Client.class; return null; } } |
4.7.2.5 DebitorReferenceFacade
In der Klasse DebitorReferenceFacade muss ebenfalls nur eine Methode implementiert werden:
- getWrappedClass() sollte die Java-Klasse des verwendeten Referenzobjektes zurückgeben
Ein Beispiel dazu ist jeweils in einem Kommentarblock angegeben, dieses Beispiel ist an das tatsächlich genutzte Referenzbusinessobjekt (bzw. dessen BusinessObject-Klasse) anzupassen.
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.wrapper.AbstractDebitorReferenceWrapper; import org.nuclet.sepa.wrapper.DebitorReferenceWrapper; // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen! // // import org.nuclet.businesstemplate.ClientBilling; /** * Facade for Business Objects of type "Debitor Reference" * * @note replaces the original class ReferenceFacade * * @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 DebitorReferenceFacade<T extends BusinessObject & Modifiable> extends AbstractDebitorReferenceFacade<T> // @replace public class<ClientBilling> getWrappedClass() { private static final DebitorReferenceFacade instance = new DebitorReferenceFacade(); /** * Liefert die Singleton-Instanz dieser Klasse * */ public static DebitorReferenceFacade getInstance() { return instance; } /** * Wrap the actual reference objects inside an <code>AbstractDebitorReferenceWrapper</code> * * @return the actual reference objects, wrapped inside an <code>AbstractDebitorReferenceWrapper</code> * */ public AbstractReferenceWrapperAbstractDebitorReferenceWrapper getReferenceWrappergetWrapper(final Modifiable boReference) { return new ReferenceWrapperDebitorReferenceWrapper(boReference); } /** * Get the class of the actual reference objects, i.e. the class wrapped by <code>ReferenceWrapper<<code>DebitorReferenceWrapper</code> * * @return the class of the actual reference objects, i.e. the class wrapped by <code>ReferenceWrapper<<code>DebitorReferenceWrapper</code> * */ public Class<T> getWrappedClass() // @replace public class<ClientBilling> getWrappedClass() { // @replace! // // return ClientBilling.class; return null; } } |
...
return null;
}
} |
4.7.2.
...
6 DirectDebitReferenceFacade
In der Klasse PaymentReferenceFacade DirectDebitReferenceFacade müssen zwei Methoden implementiert werden:
- getSEPAPaymentInformationAttributegetSEPATransactionIdAttribute() sollte das Attribut zurückliefern, das auf die SEPA-Zahlungsinformationen Transaktion referenziert
- getWrappedClass() sollte die Java-Klasse des verwendeten Zahlungsreferenzobjektes zurückgeben
...
Hinweis |
---|
Bitte beachten Sie außerdem, dass das generische "<T>" in den Zeilen 36 39 und 67 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.AbstractDirectDebitReferenceFacade; import org.nuclet.sepa.wrapper.AbstractPaymentReferenceWrapperAbstractDirectDebitReferenceWrapper; import org.nuclet.sepa.wrapper.PaymentReferenceWrapperDirectDebitReferenceWrapper; // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen! // // Beispiel: // // import org.nuclet.businesstemplate.ClientBillingPosition; /** * Facade for Business Objects of type "PaymentReference"DirectDebitReference" * * @note replaces the original class PaymentReferenceFacade * * @version 1.0 * @date 2130.0301.20142015 * @nuclet org.nuclet.SEPA * @nucletversion 12.0.0 * @sincenucletversion 12.0.0 * @since 2130.0301.20142015 * * @author frank.lehmann@nuclos.de * */ public class PaymentReferenceFacade<TDirectDebitReferenceFacade<T extends BusinessObject & Modifiable> extends AbstractPaymentReferenceFacade<T>AbstractDirectDebitReferenceFacade<T> // @replace! AbstractPaymentReferenceFacade<ClientBillingPosition> { private static final PaymentReferenceFacadeDirectDebitReferenceFacade instance = new PaymentReferenceFacadeDirectDebitReferenceFacade(); /** * Liefert die Singleton-Instanz dieser Klasse * */ public static PaymentReferenceFacadeDirectDebitReferenceFacade getInstance() { return instance; } /** * Wrap the actual payment reference objects inside an <code>AbstractPaymentReferenceWrapper<<code>AbstractDirectDebitReferenceWrapper</code> * * @return the actual payment reference objects, wrapped inside an <code>AbstractPaymentReferenceWrapper<<code>AbstractDirectDebitReferenceWrapper</code> * */ public AbstractPaymentReferenceWrapperAbstractDirectDebitReferenceWrapper getPaymentReferenceWrappergetWrapper(final Modifiable boPaymentReferenceboDirectDebitReference) { return new PaymentReferenceWrapperDirectDebitReferenceWrapper(boPaymentReferenceboDirectDebitReference); } /** * Get the class of the actual payment reference objects, i.e. the class wrapped by <code>PaymentReferenceWrapper<<code>DirectDebitReferenceWrapper</code> * * @return the class of the actual payment reference objects, i.e. the class wrapped by <code>PaymentReferenceWrapper<<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 payment informationtransaction * * @return the attribue, that identifies the SEPA payment informationtransaction * */ protected ForeignKeyAttribute<Long> getSEPAPaymentInformationAttributegetSEPATransactionIdAttribute() { // @replace! // // return ClientBillingPosition.SEPAPaymentInformation; return null; } } |
...