Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2004 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.bea.commerce.ebusiness.price.quote
Class Quote

    java.lang.Object
      com.bea.commerce.ebusiness.price.quote.Quote

All Implemented Interfaces:
  Serializable

public class Quote
extends Object
implements Serializable

The Quote class provides a framework for building a price quote for a collection of LineItems. The LineItems may be adjusted within the framework such that any sub-quantity of a LineItem maybe assigned a new unit price. Each LineAdjustment represents a subquantity of a LineItem and include a new unit price. Each LineAdjustment must have exactly one AdjustmentDetail object describing the adjustment. The quantities of a set of LineAdjustments for a LineItem may not exceed the quantity of the LineItem. The subtotal of the quote is the sum of the values of the LineItems. OrderAdjustments may also be added to the Quote. The OrderAdjustments change the total for the Quote. The total is computed by adding any OrderAdjustments to the subtotal for the object.

See Also:
  `LineItem`, `LineAdjustment`, `OrderAdjustment`, `AdjustmentDetail`, `AdjustmentType`, `QuoteFactory`, `Money`, Serialized Form

Field Summary
`static String` | `INPUT`
`static double` | `MIN_PRICE`
`static double` | `ONE_HUNDRED`
`static String` | `STATE`
`static int` | `STATE_I_DISC`
`static int` | `STATE_I_END`
`static int` | `STATE_I_ERROR`
`static int` | `STATE_I_NO_ADJ`
`static int` | `STATE_I_SHIPPING`
`static int` | `STATE_I_TAX`
`static String` | `STATE_S_DISC`
`static String` | `STATE_S_END`
`static String` | `STATE_S_ERROR`
`static String` | `STATE_S_NO_ADJ`
`static String` | `STATE_S_SHIPPING`
`static String` | `STATE_S_TAX`

Constructor Summary
`Quote()` Constructs a Quote object with no LineItems and no associated QuoteFactory.
`Quote(QuoteFactory factory, List lineItems)` Constructs a Quote object with the specified QuoteFactory and LineItem objects.

Method Summary
`void` | `addLineAdjustment(int itemNumber, int qty, AdjustmentDetail aDetail)` Add a new LineAdjustment based on the specified input values and with the specified AdjustmentDetail.
`void` | `addLineAdjustment(LineItem item, int qty, AdjustmentDetail aDetail)` Add a new LineAdjustment based on the specified input values and with the specified AdjustmentDetail.
`void` | `addOrderDetail(AdjustmentDetail aDetail)` Create a new OrderAdjustment object with the specified AdjustmentDetail object.
`static boolean` | `checkMinPrice(Money value)` Returns true if the Money value is greater than or equal to the minimum price of zero.
`Money` | `getBaseShipping()` Returns the Money value for the base shipping cost.
`String` | `getCurrency()` Returns the currency for this Quote object.
`QuoteFactory` | `getFactory()` Get the QuoteFactory used to create other Quote package objects as needed by this Quote object.
`int` | `getLineCnt()` Return the number of LineItems in this Quote.
`LineItem` | `getLineItem(int itemNumber)` Returns the LineItem associated with the index supplied.
`List` | `getLineItems()` Returns an unmodifiable List of the LineItem objects of this object.
`List` | `getOrderAdjustments()` Returns the full list of OrderAdjustment objects associated with this Quote.
`List` | `getOrderDiscountAdjustments()` Returns only the list of order discount adjustments from the list of OrderAdjustments.
`List` | `getShippingOrderAdjustments()` Returns only the list of shipping adjustments from the list of OrderAdjustments.
`Money` | `getSubtotal()` Returns the current subtotal of the Quote.
`Money` | `getTotal()` Returns the current total of the Quote.
`String` | `getUID()` Return the unique string identifier for this Quote
`int` | `incrementSeqNumber()` Used to order and associate adjustments made to the Quote object.
`static double` | `round(double value)` Returns a new double that is equivalent to the value specified rounded to two digits to the right of the decimal point.
`static double` | `round(Money value)` Returns a new double that is equivalent to the amount of Money specified rounded to two digits to the right of the decimal point.
`static MutableMoney` | `round(MutableMoney value)` Rounds the amount of the MutableMoney specified to two digits and returns the modified MutableMoney
`void` | `set(QuoteFactory factory, List lineItems)` Use this method to reinitialize a Quote object for reuse.
`void` | `setBaseShipping(Money shippingBase)` Sets the base shipping cost for the Quote.
`String` | `toString()` Provides a view of the current state of the object.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### INPUT

    public static final String INPUT

See Also:
  Constant Field Values

### MIN_PRICE

    public static final double MIN_PRICE

See Also:
  Constant Field Values

### ONE_HUNDRED

    public static final double ONE_HUNDRED

See Also:
  Constant Field Values

### STATE

    public static final String STATE

See Also:
  Constant Field Values

### STATE_I_DISC

    public static final int STATE_I_DISC

See Also:
  Constant Field Values

### STATE_I_END

    public static final int STATE_I_END

See Also:
  Constant Field Values

### STATE_I_ERROR

    public static final int STATE_I_ERROR

See Also:
  Constant Field Values

### STATE_I_NO_ADJ

    public static final int STATE_I_NO_ADJ

See Also:
  Constant Field Values

### STATE_I_SHIPPING

    public static final int STATE_I_SHIPPING

See Also:
  Constant Field Values

### STATE_I_TAX

    public static final int STATE_I_TAX

See Also:
  Constant Field Values

### STATE_S_DISC

    public static final String STATE_S_DISC

See Also:
  Constant Field Values

### STATE_S_END

    public static final String STATE_S_END

See Also:
  Constant Field Values

### STATE_S_ERROR

    public static final String STATE_S_ERROR

See Also:
  Constant Field Values

### STATE_S_NO_ADJ

    public static final String STATE_S_NO_ADJ

See Also:
  Constant Field Values

### STATE_S_SHIPPING

    public static final String STATE_S_SHIPPING

See Also:
  Constant Field Values

### STATE_S_TAX

    public static final String STATE_S_TAX

See Also:
  Constant Field Values

Constructor Detail

### Quote

    public Quote()

  Constructs a Quote object with no LineItems and no associated QuoteFactory. The set() method can be used to set those properties

### Quote

    public Quote(QuoteFactory factory,
                 List lineItems)
          throws QuoteException,
                 CurrencyMismatchException

  Constructs a Quote object with the specified QuoteFactory and LineItem objects.

Throws:
  `QuoteException`
  `CurrencyMismatchException`
See Also:
  `QuoteFactory`, `LineItem`

Method Detail

### addLineAdjustment

    public void addLineAdjustment(int itemNumber,
                                  int qty,
                                  AdjustmentDetail aDetail)
                           throws QuoteException

  Add a new LineAdjustment based on the specified input values and with the specified AdjustmentDetail.

  Parameters:
    `itemNumber` - the number of the LineItem to associate the adjustment with.
    `qty` - the quantity of objects of the specified LineItem to adjust.
    `aDetail` - the AdjustmentDetail to associate with the new LineAdjustment.
  Returns:
    void
  Throws:
    `QuoteException`
  See Also:
    `LineAdjustment`, `LineItem`, `AdjustmentDetail`

### addLineAdjustment

    public void addLineAdjustment(LineItem item,
                                  int qty,
                                  AdjustmentDetail aDetail)
                           throws QuoteException

  Add a new LineAdjustment based on the specified input values and with the specified AdjustmentDetail.

  Parameters:
    `item` - the LineItem to associate the adjustment with.
    `qty` - the quantity of objects of the specified LineItem to adjust.
    `aDetail` - the AdjustmentDetail to associate with the new LineAdjustment.
  Returns:
    void
  Throws:
    `QuoteException`
  See Also:
    `LineAdjustment`, `LineItem`, `AdjustmentDetail`

### addOrderDetail

    public void addOrderDetail(AdjustmentDetail aDetail)
                        throws QuoteException

  Create a new OrderAdjustment object with the specified AdjustmentDetail object. Add the newly created OrderAdjustment to the list of adjustments. Adding of OrderAdjustments effects the total price for the Quote but does not effect the subtotal of the Quote. OrderAdjustments must be added after all LineAdjustments have been added and before shipping adjustments are added. Failure to follow this order will cause a QuoteException to be thrown.

  Parameters:
    `aDetail` - an AdjustmentDetail object.
  Returns:
    void
  Throws:
    `QuoteException`
  See Also:
    `AdjustmentDetail`, `OrderAdjustment`, `LineAdjustment`

### checkMinPrice

    public static final boolean checkMinPrice(Money value)

  Returns true if the Money value is greater than or equal to the minimum price of zero.

  Parameters:
    `value` - the Money object to compare against the minimum price

### getBaseShipping

    public final Money getBaseShipping()

  Returns the Money value for the base shipping cost. If the base shipping cost has not been explicitly set with the setShippingbase() mehtod the Money object returned will have a value of zero and the currency will match the currency of the Quote object

  Returns:
    the Money object for the base shipping price
  See Also:
    `Money`

### getCurrency

    public final String getCurrency()

  Returns the currency for this Quote object. The value is derived from the LineItems used to construct or set the Quote.

  Returns:
    String representing the currency for this Quote object.
  See Also:
    `Money`

### getFactory

    public final QuoteFactory getFactory()

  Get the QuoteFactory used to create other Quote package objects as needed by this Quote object.

  Returns:
    the QuoteFactory object used by this Quote.
  See Also:
    `QuoteFactory`

### getLineCnt

    public final int getLineCnt()

  Return the number of LineItems in this Quote.

### getLineItem

    public LineItem getLineItem(int itemNumber)

  Returns the LineItem associated with the index supplied.

  Returns:
    a LineItem object.
  See Also:
    `LineItem`

### getLineItems

    public List getLineItems()

  Returns an unmodifiable List of the LineItem objects of this object.

  Returns:
    an unmodifiable List of LineItem objects.
  See Also:
    `LineItem`, `Collections`

### getOrderAdjustments

    public List getOrderAdjustments()

  Returns the full list of OrderAdjustment objects associated with this Quote. The full list of adjustments includes order discounts and shipping adjustments. Use getOrderDiscountAdjustments() to obtain only the order discounts and use getShippingOrderAdjustments() to obtain shipping adjustments.

  Returns:
    a List of OrderAdjustment objects. An empty List may be returned if no order adjustments are present.
  See Also:
    `OrderAdjustment`, `AdjustmentType`

### getOrderDiscountAdjustments

    public List getOrderDiscountAdjustments()

  Returns only the list of order discount adjustments from the list of OrderAdjustments. Use getOrderAdjustments() to obtain all the order OrderAdjustment objects and use getShippingOrderAdjustments() to obtain just the shipping adjustments. All of the OrderAdjustment objects returned will have an AdjustmentType of AdjustmentType.ORDER_DISCOUNT.

  Returns:
    a List of OrderAdjustment objects that represent the order discounts for the Quote. Null will be returned if no order discount adjustments exist.
  See Also:
    `OrderAdjustment`, `AdjustmentType`

### getShippingOrderAdjustments

    public List getShippingOrderAdjustments()

  Returns only the list of shipping adjustments from the list of OrderAdjustments. Use getOrderAdjustments() to obtain all the order OrderAdjustment objects and use getOrderDiscountAdjustments() to obtain just the order discount adjustments. All of the OrderAdjustment objects returned will have an AdjustmentType of AdjustmentType.SHIPPING_BASE_PRICE.

  Returns:
    a List of OrderAdjustment objects that represent the shipping adjustment for the Quote. Null will be returned if no order discount adjustments exist.
  See Also:
    `OrderAdjustment`, `AdjustmentType`

### getSubtotal

    public final Money getSubtotal()

  Returns the current subtotal of the Quote. The subtotal is the sum of the total values of the LineItems. After any order adjustments are added the subtotal will not change.

  Returns:
    the Money object for the Quote subtotal
  See Also:
    `LineItem`

### getTotal

    public final Money getTotal()

  Returns the current total of the Quote. The total is the subtotal plus all order adjustments.

  Returns:
    the Money object for the Quote total
  See Also:
    `OrderAdjustment`

### getUID

    public String getUID()

  Return the unique string identifier for this Quote

### incrementSeqNumber

    public final int incrementSeqNumber()

  Used to order and associate adjustments made to the Quote object. The user of the object should use this method to increment the sequence number. The incremented sequence number will then be used to decorate all adjustments until the number is incremented again. The first call to this method after constructing or setting this object will return 0.

  Returns:
    the incremented sequence number beginning at zero.

### round

    public static final double round(double value)

  Returns a new double that is equivalent to the value specified rounded to two digits to the right of the decimal point.

  Parameters:
    `value` - a double value to round

### round

    public static final double round(Money value)

  Returns a new double that is equivalent to the amount of Money specified rounded to two digits to the right of the decimal point.

  Parameters:
    `value` - a Money value to round

### round

    public static final MutableMoney round(MutableMoney value)

  Rounds the amount of the MutableMoney specified to two digits and returns the modified MutableMoney

  Parameters:
    `value` - a MutableMoney value to round.
  Returns:
    the rounded MutableMoney.

### set

    public void set(QuoteFactory factory,
                    List lineItems)
             throws QuoteException,
                    CurrencyMismatchException

  Use this method to reinitialize a Quote object for reuse. After calling this method the Quote object will represent the new line items and factory specified and will have no line or order adjustments.

  Parameters:
    `factory` - the QuoteFactory to use when generating other objects from the Quote package.
    `lineItems` - a List of LineItem objects
  Throws:
    `QuoteException`
    `CurrencyMismatchException`
  See Also:
    `QuoteFactory`, `LineItem`

### setBaseShipping

    public final void setBaseShipping(Money shippingBase)
                               throws QuoteException,
                                      CurrencyMismatchException

  Sets the base shipping cost for the Quote.

  Returns:
    the Money object for the base shipping price.
  Throws:
    `QuoteException` - if the value passed in is null.
    `CurrencyMismatchException` - if the currency of the Money object specified does not match the Quotes currency.
  See Also:
    `OrderAdjustment`

### toString

    public final String toString()

  Provides a view of the current state of the object. This method is intended for debugging and may change at anytime.

  Returns:
    string showing the current state of the object.

Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2004 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2004 BEA Systems, Inc. All Rights Reserved