BEA Systems, Inc.

theory.smart.ebusiness.order
Class OrderWorkflow

java.lang.Object
  |
  +--theory.smart.axiom.workflow.StateMachine
        |
        +--theory.smart.ebusiness.order.OrderWorkflow

public class OrderWorkflow
extends StateMachine
implements Workflow

The workflow that describes the legal states and transitions for an order.

------------------------------------------------------
These are the states provided by this StateMachine:
------------------------------------------------------

[Browsing]
The process of selecting new items for the order.
[Cancelled]
The order is cancelled before it has been shipped.
[Invoiced]
The order has been recorded and can no longer be modified.
[PartiallyShipped]
[PendingShipment]
The order is being processed by the shipping department.
[Returned]
[Shipped]
The order is being being delivered to the customer. An additional state may be inserted to connote successfu delivery. We will assume that the order is delivered when it is shipped.
[start]   Initial State
------------------------------------------------------
These are the transitions provided by this StateMachine:
------------------------------------------------------

     browse
 [start]------------->[Browsing]
The intial transition that allows the customer to begin adding items to the order.
     cancel
 [Invoiced]------------->[Cancelled]
Cancel the order before it has been shipped.
     cancel
 [PendingShipment]------------->[Cancelled]
Cancel the order before it has been shipped.
     invoice
 [Browsing]------------->[Invoiced]
Send the order to the billing department and create a packinglist and invoice.
     partialShip
 [PartiallyShipped]------------->[PartiallyShipped]
     partialShip
 [PendingShipment]------------->[PartiallyShipped]
     return
 [Shipped]------------->[Returned]
Record that the customer has sent the item back and that it has been returned to inventory.
     sendToShipping
 [Invoiced]------------->[PendingShipment]
Send the PackingList to shipping so that the items can be packaged and delivered.
     ship
 [PartiallyShipped]------------->[Shipped]
     ship
 [PendingShipment]------------->[Shipped]
Record that the order has been handed off to the delivery mechanism.

See Also:
Workflow, Serialized Form

Constructor Summary
OrderWorkflow()
          Use WorkflowHome.create("theory.smart.ebusiness.order.OrderWorkflow") to instantiate the workflow.
 
Methods inherited from class theory.smart.axiom.workflow.StateMachine
doTransition, getContext, getCurrentStateName, getInitialStateName, getStateNames, getTransitionNames, lookAheadTransition, reset, setContext
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OrderWorkflow

public OrderWorkflow()
Use WorkflowHome.create("theory.smart.ebusiness.order.OrderWorkflow") to instantiate the workflow.

BEA Systems, Inc.

Copyright © 2000 BEA Systems, Inc. All Rights Reserved