| ShoppingCartItemImpl.java |
1 /**
2 * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.
3 *
4 *
5 *
6 *
7 * The contents of this file are subject to the terms of the Liferay Enterprise
8 * Subscription License ("License"). You may not use this file except in
9 * compliance with the License. You can obtain a copy of the License by
10 * contacting Liferay, Inc. See the License for the specific language governing
11 * permissions and limitations under the License, including but not limited to
12 * distribution rights of the Software.
13 *
14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20 * SOFTWARE.
21 */
22
23 package com.liferay.portlet.shopping.model.impl;
24
25 import com.liferay.portal.kernel.util.StringUtil;
26 import com.liferay.portal.kernel.util.Validator;
27 import com.liferay.portlet.shopping.model.ShoppingCartItem;
28 import com.liferay.portlet.shopping.model.ShoppingItem;
29
30 /**
31 * <a href="ShoppingCartItemImpl.java.html"><b><i>View Source</i></b></a>
32 *
33 * @author Brian Wing Shun Chan
34 */
35 public class ShoppingCartItemImpl implements ShoppingCartItem {
36
37 public static String[] getFieldsArray(String fields) {
38 return StringUtil.split(fields, "&");
39 }
40
41 public ShoppingCartItemImpl(ShoppingItem item, String fields) {
42 _item = item;
43 _fields = fields;
44 }
45
46 public String getCartItemId() {
47 long itemId = getItem().getItemId();
48
49 if (Validator.isNull(_fields)) {
50 return String.valueOf(itemId);
51 }
52 else {
53 return itemId + "|" + _fields;
54 }
55 }
56
57 public ShoppingItem getItem() {
58 return _item;
59 }
60
61 public String getFields() {
62 return _fields;
63 }
64
65 public String[] getFieldsArray() {
66 return getFieldsArray(_fields);
67 }
68
69 public int compareTo(ShoppingCartItem cartItem) {
70 if (cartItem == null) {
71 return -1;
72 }
73
74 int value = getItem().compareTo(cartItem.getItem());
75
76 if (value == 0) {
77 value = getFields().compareTo(cartItem.getFields());
78 }
79
80 return value;
81 }
82
83 public boolean equals(Object obj) {
84 if (obj == null) {
85 return false;
86 }
87
88 ShoppingCartItem cartItem = (ShoppingCartItem)obj;
89
90 if (getItem().equals(cartItem.getItem()) &&
91 getFields().equals(cartItem.getFields())) {
92
93 return true;
94 }
95 else {
96 return false;
97 }
98 }
99
100 private ShoppingItem _item;
101 private String _fields;
102
103 }