001    /**
002     * Copyright (c) 2000-present Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portlet.shopping.model.impl;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.util.HashUtil;
020    import com.liferay.portal.kernel.util.StringBundler;
021    import com.liferay.portal.kernel.util.StringPool;
022    import com.liferay.portal.model.CacheModel;
023    
024    import com.liferay.portlet.shopping.model.ShoppingOrderItem;
025    
026    import java.io.Externalizable;
027    import java.io.IOException;
028    import java.io.ObjectInput;
029    import java.io.ObjectOutput;
030    
031    import java.util.Date;
032    
033    /**
034     * The cache model class for representing ShoppingOrderItem in entity cache.
035     *
036     * @author Brian Wing Shun Chan
037     * @see ShoppingOrderItem
038     * @generated
039     */
040    @ProviderType
041    public class ShoppingOrderItemCacheModel implements CacheModel<ShoppingOrderItem>,
042            Externalizable {
043            @Override
044            public boolean equals(Object obj) {
045                    if (this == obj) {
046                            return true;
047                    }
048    
049                    if (!(obj instanceof ShoppingOrderItemCacheModel)) {
050                            return false;
051                    }
052    
053                    ShoppingOrderItemCacheModel shoppingOrderItemCacheModel = (ShoppingOrderItemCacheModel)obj;
054    
055                    if (orderItemId == shoppingOrderItemCacheModel.orderItemId) {
056                            return true;
057                    }
058    
059                    return false;
060            }
061    
062            @Override
063            public int hashCode() {
064                    return HashUtil.hash(0, orderItemId);
065            }
066    
067            @Override
068            public String toString() {
069                    StringBundler sb = new StringBundler(21);
070    
071                    sb.append("{orderItemId=");
072                    sb.append(orderItemId);
073                    sb.append(", orderId=");
074                    sb.append(orderId);
075                    sb.append(", itemId=");
076                    sb.append(itemId);
077                    sb.append(", sku=");
078                    sb.append(sku);
079                    sb.append(", name=");
080                    sb.append(name);
081                    sb.append(", description=");
082                    sb.append(description);
083                    sb.append(", properties=");
084                    sb.append(properties);
085                    sb.append(", price=");
086                    sb.append(price);
087                    sb.append(", quantity=");
088                    sb.append(quantity);
089                    sb.append(", shippedDate=");
090                    sb.append(shippedDate);
091                    sb.append("}");
092    
093                    return sb.toString();
094            }
095    
096            @Override
097            public ShoppingOrderItem toEntityModel() {
098                    ShoppingOrderItemImpl shoppingOrderItemImpl = new ShoppingOrderItemImpl();
099    
100                    shoppingOrderItemImpl.setOrderItemId(orderItemId);
101                    shoppingOrderItemImpl.setOrderId(orderId);
102    
103                    if (itemId == null) {
104                            shoppingOrderItemImpl.setItemId(StringPool.BLANK);
105                    }
106                    else {
107                            shoppingOrderItemImpl.setItemId(itemId);
108                    }
109    
110                    if (sku == null) {
111                            shoppingOrderItemImpl.setSku(StringPool.BLANK);
112                    }
113                    else {
114                            shoppingOrderItemImpl.setSku(sku);
115                    }
116    
117                    if (name == null) {
118                            shoppingOrderItemImpl.setName(StringPool.BLANK);
119                    }
120                    else {
121                            shoppingOrderItemImpl.setName(name);
122                    }
123    
124                    if (description == null) {
125                            shoppingOrderItemImpl.setDescription(StringPool.BLANK);
126                    }
127                    else {
128                            shoppingOrderItemImpl.setDescription(description);
129                    }
130    
131                    if (properties == null) {
132                            shoppingOrderItemImpl.setProperties(StringPool.BLANK);
133                    }
134                    else {
135                            shoppingOrderItemImpl.setProperties(properties);
136                    }
137    
138                    shoppingOrderItemImpl.setPrice(price);
139                    shoppingOrderItemImpl.setQuantity(quantity);
140    
141                    if (shippedDate == Long.MIN_VALUE) {
142                            shoppingOrderItemImpl.setShippedDate(null);
143                    }
144                    else {
145                            shoppingOrderItemImpl.setShippedDate(new Date(shippedDate));
146                    }
147    
148                    shoppingOrderItemImpl.resetOriginalValues();
149    
150                    return shoppingOrderItemImpl;
151            }
152    
153            @Override
154            public void readExternal(ObjectInput objectInput) throws IOException {
155                    orderItemId = objectInput.readLong();
156                    orderId = objectInput.readLong();
157                    itemId = objectInput.readUTF();
158                    sku = objectInput.readUTF();
159                    name = objectInput.readUTF();
160                    description = objectInput.readUTF();
161                    properties = objectInput.readUTF();
162                    price = objectInput.readDouble();
163                    quantity = objectInput.readInt();
164                    shippedDate = objectInput.readLong();
165            }
166    
167            @Override
168            public void writeExternal(ObjectOutput objectOutput)
169                    throws IOException {
170                    objectOutput.writeLong(orderItemId);
171                    objectOutput.writeLong(orderId);
172    
173                    if (itemId == null) {
174                            objectOutput.writeUTF(StringPool.BLANK);
175                    }
176                    else {
177                            objectOutput.writeUTF(itemId);
178                    }
179    
180                    if (sku == null) {
181                            objectOutput.writeUTF(StringPool.BLANK);
182                    }
183                    else {
184                            objectOutput.writeUTF(sku);
185                    }
186    
187                    if (name == null) {
188                            objectOutput.writeUTF(StringPool.BLANK);
189                    }
190                    else {
191                            objectOutput.writeUTF(name);
192                    }
193    
194                    if (description == null) {
195                            objectOutput.writeUTF(StringPool.BLANK);
196                    }
197                    else {
198                            objectOutput.writeUTF(description);
199                    }
200    
201                    if (properties == null) {
202                            objectOutput.writeUTF(StringPool.BLANK);
203                    }
204                    else {
205                            objectOutput.writeUTF(properties);
206                    }
207    
208                    objectOutput.writeDouble(price);
209                    objectOutput.writeInt(quantity);
210                    objectOutput.writeLong(shippedDate);
211            }
212    
213            public long orderItemId;
214            public long orderId;
215            public String itemId;
216            public String sku;
217            public String name;
218            public String description;
219            public String properties;
220            public double price;
221            public int quantity;
222            public long shippedDate;
223    }