© 2005 BEA Systems, Inc.

com.beasys.commerce.ebusiness.payment
Interface PaymentTransaction

All Superinterfaces:
BusinessSmartComponent, EJBObject, Entity, Remote, RemoteRelationalReference, Serializable

public interface PaymentTransaction
extends Entity

A PaymentTransaction is an Entity EJB that maintains the state of an individual Credit Card transaction. This includes the credit card, amount, status, and date of last modification. It also maintains a journal of the actions in the form of TransactionEntry objects taken as the transaction is moved through authorization, capture, and settlement.

The transaction workflow is dictated by the PaymentWorkflow state machine.

See Also:
PaymentTransactionPk, PaymentTransactionHome, PaymentTransactionValue, TransactionEntry, PaymentWorkflow

Method Summary
 boolean addTransactionEntry(TransactionEntry element)
          Adds a new TransactionEntry to the journal.
 boolean addTransactionEntryCollection(Collection collection)
          Adds all of the TransactionEntries to the journal.
 void authorize()
          Change the state of the payment transaction by applying the authorize event.
 void clearTransactionEntryCollection()
          Removes all of the transaction entries from the journal.
 boolean containsTransactionEntry(TransactionEntry element)
          Returns true if this collection contains the specified element.
 boolean containsTransactionEntryCollection(Collection c)
          Returns true if this collection contains all of the elements in the specified collection.
 boolean equalsTransactionEntryCollection(Object object)
          Compares the specified object with this collection for equality.
 void failRetry()
          Change the state of the payment transaction by applying the failRetry event.
 void failSettle()
          Change the state of the payment transaction by applying the failSettle event.
 String getBatchId()
          Get the value of the identifier for the batch in which this Payment was settled.
 com.beasys.commerce.axiom.contact.CreditCard getCreditCard()
          Get the credit card information associated with the transaction.
 PaymentTransactionValue getPaymentTransactionByValue()
          Retrieve a local copy of all of the public attributes in the form of a PaymentTransactionValue object.
 String getStatus()
          Retrieve the status of this payment.
 Price getTransactionAmount()
          Get the amount of the transaction.
 Date getTransactionDate()
          Get the date that the transaction was last updated.
 Collection getTransactionEntryCollection()
          Returns a history of the modifications to this transaction.
 String getTransactionId()
          Get the transaction's identifier.
 boolean isTransactionEntryCollectionEmpty()
          Returns true if this collection contains no elements.
 void markForSettle()
          Change the state of the payment transaction by applying the markForSettle event.
 void pendingSettle()
          Change the state of the payment transaction by applying the pendingSettle event.
 void queryFail()
          Change the state of the payment transaction by applying the queryFail event.
 void querySuccess()
          Change the state of the payment transaction by applying the querySuccess event.
 void reject()
          Change the state of the payment transaction by applying the reject event.
 boolean removeTransactionEntry(TransactionEntry element)
          Removes a single instance of the specified element from this collection, if it is present (optional operation).
 boolean removeTransactionEntryCollection(Collection collection)
          Removes all this collection's elements that are also contained in the specified collection (optional operation).
 boolean retainTransactionEntryCollection(Collection collection)
          Retains only the elements in this collection that are contained in the specified collection (optional operation).
 void setBatchId(String batchId)
          Set the value of the identifier for the batch in which this Payment was settled.
 void setCreditCard(com.beasys.commerce.axiom.contact.CreditCard creditCard)
          Set the credit card information associated with the transaction
 void setPaymentTransactionByValue(PaymentTransactionValue value)
          Update all of the public attributes of a PaymentTransaction with a single method invocation.
 void settle()
          Change the state of the payment transaction by applying the settle event.
 void setTransactionAmount(Price transactionAmount)
          Set the amount of the transaction.
 void setTransactionDate(Date transactionDate)
          Set the modification date for the PaymentTransaction
 void setTransactionEntryCollection(Collection collection)
          Update the journal of the modifications for this transaction.
 void systemFailure()
          Change the state of the payment transaction by applying the systemFailure event.
 int transactionEntryCollectionHashCode()
          Returns the hash code value for this collection.
 int transactionEntryCollectionSize()
          Returns the number of elements in this collection.
 
Methods inherited from interface javax.ejb.EJBObject
getEJBHome, getHandle, getPrimaryKey, isIdentical, remove
 
Methods inherited from interface com.beasys.commerce.foundation.RemoteRelationalReference
get__classIdentifier, get__containingBelonging, get__containingEntity, get__mapKey, get__sequenceNumber, set__containingBelonging, set__containingEntity, set__mapKey
 

Method Detail

addTransactionEntry

public boolean addTransactionEntry(TransactionEntry element)
                            throws RemoteException
Adds a new TransactionEntry to the journal.

Parameters:
element - The Transaction entry to add.
Returns:
true if the collection was modified as a result of the operation.
Throws:
RemoteException - On remote error.

addTransactionEntryCollection

public boolean addTransactionEntryCollection(Collection collection)
                                      throws RemoteException
Adds all of the TransactionEntries to the journal.

Parameters:
collection - a collection of TransactionEntry objects.
Returns:
true if the collection was modified as a result of the operation.
Throws:
RemoteException - On remote error.

authorize

public void authorize()
               throws RemoteException,
                      WorkflowInstantiationException,
                      IllegalWorkflowTransitionException
Change the state of the payment transaction by applying the authorize event. This method is invoked prior to atempting the authorize operation and will throw an exception if the operation is being executed out of sequence.

Throws:
WorkflowInstantiationException
IllegalWorkflowTransitionException
RemoteException

clearTransactionEntryCollection

public void clearTransactionEntryCollection()
                                     throws RemoteException
Removes all of the transaction entries from the journal.

Throws:
RemoteException - On remote error.

containsTransactionEntry

public boolean containsTransactionEntry(TransactionEntry element)
                                 throws RemoteException
Returns true if this collection contains the specified element.

Throws:
RemoteException

containsTransactionEntryCollection

public boolean containsTransactionEntryCollection(Collection c)
                                           throws RemoteException
Returns true if this collection contains all of the elements in the specified collection.

Throws:
RemoteException

equalsTransactionEntryCollection

public boolean equalsTransactionEntryCollection(Object object)
                                         throws RemoteException
Compares the specified object with this collection for equality.

Throws:
RemoteException

failRetry

public void failRetry()
               throws RemoteException,
                      WorkflowInstantiationException,
                      IllegalWorkflowTransitionException
Change the state of the payment transaction by applying the failRetry event. This method is invoked when a retry of an authorization fails.

Throws:
WorkflowInstantiationException
IllegalWorkflowTransitionException
RemoteException

failSettle

public void failSettle()
                throws RemoteException,
                       WorkflowInstantiationException,
                       IllegalWorkflowTransitionException
Change the state of the payment transaction by applying the failSettle event. This method is invoked prior when an settle operation fails.

Throws:
WorkflowInstantiationException
IllegalWorkflowTransitionException
RemoteException

getBatchId

public String getBatchId()
                  throws RemoteException
Get the value of the identifier for the batch in which this Payment was settled.

Returns:
batchId
Throws:
RemoteException

getCreditCard

public com.beasys.commerce.axiom.contact.CreditCard getCreditCard()
                                                           throws RemoteException
Get the credit card information associated with the transaction.

Returns:
creditCard the credit card associated with the transaction.
Throws:
RemoteException - On remote error.

getPaymentTransactionByValue

public PaymentTransactionValue getPaymentTransactionByValue()
                                                     throws RemoteException
Retrieve a local copy of all of the public attributes in the form of a PaymentTransactionValue object. This reduces the number of remote method invocations needed to retrieve all of the information associated with this Entity.

Returns:
PaymentTransactionValue The PaymentTransaction value object
Throws:
RemoteException - On remote error.

getStatus

public String getStatus()
                 throws RemoteException
Retrieve the status of this payment. The series of states will be as governed by the PaymentWorkflow

Throws:
RemoteException

getTransactionAmount

public Price getTransactionAmount()
                           throws RemoteException
Get the amount of the transaction.

Returns:
transactionAmount.
Throws:
RemoteException

getTransactionDate

public Date getTransactionDate()
                        throws RemoteException
Get the date that the transaction was last updated.

Returns:
transactionDate the transaction date.
Throws:
RemoteException - On remote error.

getTransactionEntryCollection

public Collection getTransactionEntryCollection()
                                         throws RemoteException
Returns a history of the modifications to this transaction.

Returns:
a collection of TransactionEntry objects.
Throws:
RemoteException - On remote error.

getTransactionId

public String getTransactionId()
                        throws RemoteException
Get the transaction's identifier. This is the primary key for the Entity.

Throws:
RemoteException - On remote error.

isTransactionEntryCollectionEmpty

public boolean isTransactionEntryCollectionEmpty()
                                          throws RemoteException
Returns true if this collection contains no elements.

Throws:
RemoteException

markForSettle

public void markForSettle()
                   throws RemoteException,
                          WorkflowInstantiationException,
                          IllegalWorkflowTransitionException
Change the state of the payment transaction by applying the markForSettle event. This method is invoked prior to atempting the capture operation and will throw an exception if the operation is being executed out of sequence.

Throws:
WorkflowInstantiationException
IllegalWorkflowTransitionException
RemoteException

pendingSettle

public void pendingSettle()
                   throws RemoteException,
                          WorkflowInstantiationException,
                          IllegalWorkflowTransitionException
Change the state of the payment transaction by applying the pendingSettle event. This method is invoked when a transaction is successfully moved to the pending settle state.

Throws:
WorkflowInstantiationException
IllegalWorkflowTransitionException
RemoteException

queryFail

public void queryFail()
               throws RemoteException,
                      WorkflowInstantiationException,
                      IllegalWorkflowTransitionException
Change the state of the payment transaction by applying the queryFail event. This method is invoked when the status of a batch transaction faile to be verified.

Throws:
WorkflowInstantiationException
IllegalWorkflowTransitionException
RemoteException

querySuccess

public void querySuccess()
                  throws RemoteException,
                         WorkflowInstantiationException,
                         IllegalWorkflowTransitionException
Change the state of the payment transaction by applying the querySuccess event. This method is invoked when the status of a batch transaction is successfully verified.

Throws:
WorkflowInstantiationException
IllegalWorkflowTransitionException
RemoteException

reject

public void reject()
            throws RemoteException,
                   WorkflowInstantiationException,
                   IllegalWorkflowTransitionException
Change the state of the payment transaction by applying the reject event. This method is invoked when an authorization atempt is rejected.

Throws:
WorkflowInstantiationException
IllegalWorkflowTransitionException
RemoteException

removeTransactionEntry

public boolean removeTransactionEntry(TransactionEntry element)
                               throws RemoteException
Removes a single instance of the specified element from this collection, if it is present (optional operation).

Throws:
RemoteException

removeTransactionEntryCollection

public boolean removeTransactionEntryCollection(Collection collection)
                                         throws RemoteException
Removes all this collection's elements that are also contained in the specified collection (optional operation).

Throws:
RemoteException

retainTransactionEntryCollection

public boolean retainTransactionEntryCollection(Collection collection)
                                         throws RemoteException
Retains only the elements in this collection that are contained in the specified collection (optional operation).

Throws:
RemoteException

setBatchId

public void setBatchId(String batchId)
                throws RemoteException
Set the value of the identifier for the batch in which this Payment was settled.

Parameters:
batchId - batchId to be added
Throws:
RemoteException

setCreditCard

public void setCreditCard(com.beasys.commerce.axiom.contact.CreditCard creditCard)
                   throws RemoteException
Set the credit card information associated with the transaction

Parameters:
creditCard - the new credit card information
Throws:
RemoteException - On remote error.

setPaymentTransactionByValue

public void setPaymentTransactionByValue(PaymentTransactionValue value)
                                  throws RemoteException
Update all of the public attributes of a PaymentTransaction with a single method invocation. Note: Primary key attributes are not set.

Throws:
RemoteException - On remote error.

settle

public void settle()
            throws RemoteException,
                   WorkflowInstantiationException,
                   IllegalWorkflowTransitionException
Change the state of the payment transaction by applying the settle event. This method is invoked prior to atempting the settle operation and will throw an exception if the operation is being executed out of sequence.

Throws:
WorkflowInstantiationException
IllegalWorkflowTransitionException
RemoteException

setTransactionAmount

public void setTransactionAmount(Price transactionAmount)
                          throws RemoteException
Set the amount of the transaction.

Parameters:
transactionAmount - the amount of the transaction.
Throws:
RemoteException

setTransactionDate

public void setTransactionDate(Date transactionDate)
                        throws RemoteException
Set the modification date for the PaymentTransaction

Parameters:
transactionDate - the transaction date to be set.
Throws:
RemoteException - On remote error.

setTransactionEntryCollection

public void setTransactionEntryCollection(Collection collection)
                                   throws RemoteException
Update the journal of the modifications for this transaction.

Parameters:
collection - a collection of TransactionEntry objects.
Throws:
RemoteException - On remote error.

systemFailure

public void systemFailure()
                   throws RemoteException,
                          WorkflowInstantiationException,
                          IllegalWorkflowTransitionException
Change the state of the payment transaction by applying the systemFailure event. This method is invoked when an operation fails due to a problem with the credit card service.

Throws:
WorkflowInstantiationException
IllegalWorkflowTransitionException
RemoteException

transactionEntryCollectionHashCode

public int transactionEntryCollectionHashCode()
                                       throws RemoteException
Returns the hash code value for this collection.

Throws:
RemoteException

transactionEntryCollectionSize

public int transactionEntryCollectionSize()
                                   throws RemoteException
Returns the number of elements in this collection.

Throws:
RemoteException

© 2005 BEA Systems, Inc.

Copyright © 2005 BEA Systems, Inc. All Rights Reserved