001
014
015 package com.liferay.portal.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 import com.liferay.portal.model.Layout;
024 import com.liferay.portal.model.MVCCModel;
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
040 @ProviderType
041 public class LayoutCacheModel implements CacheModel<Layout>, Externalizable,
042 MVCCModel {
043 @Override
044 public boolean equals(Object obj) {
045 if (this == obj) {
046 return true;
047 }
048
049 if (!(obj instanceof LayoutCacheModel)) {
050 return false;
051 }
052
053 LayoutCacheModel layoutCacheModel = (LayoutCacheModel)obj;
054
055 if ((plid == layoutCacheModel.plid) &&
056 (mvccVersion == layoutCacheModel.mvccVersion)) {
057 return true;
058 }
059
060 return false;
061 }
062
063 @Override
064 public int hashCode() {
065 int hashCode = HashUtil.hash(0, plid);
066
067 return HashUtil.hash(hashCode, mvccVersion);
068 }
069
070 @Override
071 public long getMvccVersion() {
072 return mvccVersion;
073 }
074
075 @Override
076 public void setMvccVersion(long mvccVersion) {
077 this.mvccVersion = mvccVersion;
078 }
079
080 @Override
081 public String toString() {
082 StringBundler sb = new StringBundler(65);
083
084 sb.append("{mvccVersion=");
085 sb.append(mvccVersion);
086 sb.append(", uuid=");
087 sb.append(uuid);
088 sb.append(", plid=");
089 sb.append(plid);
090 sb.append(", groupId=");
091 sb.append(groupId);
092 sb.append(", companyId=");
093 sb.append(companyId);
094 sb.append(", userId=");
095 sb.append(userId);
096 sb.append(", userName=");
097 sb.append(userName);
098 sb.append(", createDate=");
099 sb.append(createDate);
100 sb.append(", modifiedDate=");
101 sb.append(modifiedDate);
102 sb.append(", privateLayout=");
103 sb.append(privateLayout);
104 sb.append(", layoutId=");
105 sb.append(layoutId);
106 sb.append(", parentLayoutId=");
107 sb.append(parentLayoutId);
108 sb.append(", name=");
109 sb.append(name);
110 sb.append(", title=");
111 sb.append(title);
112 sb.append(", description=");
113 sb.append(description);
114 sb.append(", keywords=");
115 sb.append(keywords);
116 sb.append(", robots=");
117 sb.append(robots);
118 sb.append(", type=");
119 sb.append(type);
120 sb.append(", typeSettings=");
121 sb.append(typeSettings);
122 sb.append(", hidden=");
123 sb.append(hidden);
124 sb.append(", friendlyURL=");
125 sb.append(friendlyURL);
126 sb.append(", iconImageId=");
127 sb.append(iconImageId);
128 sb.append(", themeId=");
129 sb.append(themeId);
130 sb.append(", colorSchemeId=");
131 sb.append(colorSchemeId);
132 sb.append(", wapThemeId=");
133 sb.append(wapThemeId);
134 sb.append(", wapColorSchemeId=");
135 sb.append(wapColorSchemeId);
136 sb.append(", css=");
137 sb.append(css);
138 sb.append(", priority=");
139 sb.append(priority);
140 sb.append(", layoutPrototypeUuid=");
141 sb.append(layoutPrototypeUuid);
142 sb.append(", layoutPrototypeLinkEnabled=");
143 sb.append(layoutPrototypeLinkEnabled);
144 sb.append(", sourcePrototypeLayoutUuid=");
145 sb.append(sourcePrototypeLayoutUuid);
146 sb.append(", lastPublishDate=");
147 sb.append(lastPublishDate);
148 sb.append("}");
149
150 return sb.toString();
151 }
152
153 @Override
154 public Layout toEntityModel() {
155 LayoutImpl layoutImpl = new LayoutImpl();
156
157 layoutImpl.setMvccVersion(mvccVersion);
158
159 if (uuid == null) {
160 layoutImpl.setUuid(StringPool.BLANK);
161 }
162 else {
163 layoutImpl.setUuid(uuid);
164 }
165
166 layoutImpl.setPlid(plid);
167 layoutImpl.setGroupId(groupId);
168 layoutImpl.setCompanyId(companyId);
169 layoutImpl.setUserId(userId);
170
171 if (userName == null) {
172 layoutImpl.setUserName(StringPool.BLANK);
173 }
174 else {
175 layoutImpl.setUserName(userName);
176 }
177
178 if (createDate == Long.MIN_VALUE) {
179 layoutImpl.setCreateDate(null);
180 }
181 else {
182 layoutImpl.setCreateDate(new Date(createDate));
183 }
184
185 if (modifiedDate == Long.MIN_VALUE) {
186 layoutImpl.setModifiedDate(null);
187 }
188 else {
189 layoutImpl.setModifiedDate(new Date(modifiedDate));
190 }
191
192 layoutImpl.setPrivateLayout(privateLayout);
193 layoutImpl.setLayoutId(layoutId);
194 layoutImpl.setParentLayoutId(parentLayoutId);
195
196 if (name == null) {
197 layoutImpl.setName(StringPool.BLANK);
198 }
199 else {
200 layoutImpl.setName(name);
201 }
202
203 if (title == null) {
204 layoutImpl.setTitle(StringPool.BLANK);
205 }
206 else {
207 layoutImpl.setTitle(title);
208 }
209
210 if (description == null) {
211 layoutImpl.setDescription(StringPool.BLANK);
212 }
213 else {
214 layoutImpl.setDescription(description);
215 }
216
217 if (keywords == null) {
218 layoutImpl.setKeywords(StringPool.BLANK);
219 }
220 else {
221 layoutImpl.setKeywords(keywords);
222 }
223
224 if (robots == null) {
225 layoutImpl.setRobots(StringPool.BLANK);
226 }
227 else {
228 layoutImpl.setRobots(robots);
229 }
230
231 if (type == null) {
232 layoutImpl.setType(StringPool.BLANK);
233 }
234 else {
235 layoutImpl.setType(type);
236 }
237
238 if (typeSettings == null) {
239 layoutImpl.setTypeSettings(StringPool.BLANK);
240 }
241 else {
242 layoutImpl.setTypeSettings(typeSettings);
243 }
244
245 layoutImpl.setHidden(hidden);
246
247 if (friendlyURL == null) {
248 layoutImpl.setFriendlyURL(StringPool.BLANK);
249 }
250 else {
251 layoutImpl.setFriendlyURL(friendlyURL);
252 }
253
254 layoutImpl.setIconImageId(iconImageId);
255
256 if (themeId == null) {
257 layoutImpl.setThemeId(StringPool.BLANK);
258 }
259 else {
260 layoutImpl.setThemeId(themeId);
261 }
262
263 if (colorSchemeId == null) {
264 layoutImpl.setColorSchemeId(StringPool.BLANK);
265 }
266 else {
267 layoutImpl.setColorSchemeId(colorSchemeId);
268 }
269
270 if (wapThemeId == null) {
271 layoutImpl.setWapThemeId(StringPool.BLANK);
272 }
273 else {
274 layoutImpl.setWapThemeId(wapThemeId);
275 }
276
277 if (wapColorSchemeId == null) {
278 layoutImpl.setWapColorSchemeId(StringPool.BLANK);
279 }
280 else {
281 layoutImpl.setWapColorSchemeId(wapColorSchemeId);
282 }
283
284 if (css == null) {
285 layoutImpl.setCss(StringPool.BLANK);
286 }
287 else {
288 layoutImpl.setCss(css);
289 }
290
291 layoutImpl.setPriority(priority);
292
293 if (layoutPrototypeUuid == null) {
294 layoutImpl.setLayoutPrototypeUuid(StringPool.BLANK);
295 }
296 else {
297 layoutImpl.setLayoutPrototypeUuid(layoutPrototypeUuid);
298 }
299
300 layoutImpl.setLayoutPrototypeLinkEnabled(layoutPrototypeLinkEnabled);
301
302 if (sourcePrototypeLayoutUuid == null) {
303 layoutImpl.setSourcePrototypeLayoutUuid(StringPool.BLANK);
304 }
305 else {
306 layoutImpl.setSourcePrototypeLayoutUuid(sourcePrototypeLayoutUuid);
307 }
308
309 if (lastPublishDate == Long.MIN_VALUE) {
310 layoutImpl.setLastPublishDate(null);
311 }
312 else {
313 layoutImpl.setLastPublishDate(new Date(lastPublishDate));
314 }
315
316 layoutImpl.resetOriginalValues();
317
318 return layoutImpl;
319 }
320
321 @Override
322 public void readExternal(ObjectInput objectInput) throws IOException {
323 mvccVersion = objectInput.readLong();
324 uuid = objectInput.readUTF();
325 plid = objectInput.readLong();
326 groupId = objectInput.readLong();
327 companyId = objectInput.readLong();
328 userId = objectInput.readLong();
329 userName = objectInput.readUTF();
330 createDate = objectInput.readLong();
331 modifiedDate = objectInput.readLong();
332 privateLayout = objectInput.readBoolean();
333 layoutId = objectInput.readLong();
334 parentLayoutId = objectInput.readLong();
335 name = objectInput.readUTF();
336 title = objectInput.readUTF();
337 description = objectInput.readUTF();
338 keywords = objectInput.readUTF();
339 robots = objectInput.readUTF();
340 type = objectInput.readUTF();
341 typeSettings = objectInput.readUTF();
342 hidden = objectInput.readBoolean();
343 friendlyURL = objectInput.readUTF();
344 iconImageId = objectInput.readLong();
345 themeId = objectInput.readUTF();
346 colorSchemeId = objectInput.readUTF();
347 wapThemeId = objectInput.readUTF();
348 wapColorSchemeId = objectInput.readUTF();
349 css = objectInput.readUTF();
350 priority = objectInput.readInt();
351 layoutPrototypeUuid = objectInput.readUTF();
352 layoutPrototypeLinkEnabled = objectInput.readBoolean();
353 sourcePrototypeLayoutUuid = objectInput.readUTF();
354 lastPublishDate = objectInput.readLong();
355 }
356
357 @Override
358 public void writeExternal(ObjectOutput objectOutput)
359 throws IOException {
360 objectOutput.writeLong(mvccVersion);
361
362 if (uuid == null) {
363 objectOutput.writeUTF(StringPool.BLANK);
364 }
365 else {
366 objectOutput.writeUTF(uuid);
367 }
368
369 objectOutput.writeLong(plid);
370 objectOutput.writeLong(groupId);
371 objectOutput.writeLong(companyId);
372 objectOutput.writeLong(userId);
373
374 if (userName == null) {
375 objectOutput.writeUTF(StringPool.BLANK);
376 }
377 else {
378 objectOutput.writeUTF(userName);
379 }
380
381 objectOutput.writeLong(createDate);
382 objectOutput.writeLong(modifiedDate);
383 objectOutput.writeBoolean(privateLayout);
384 objectOutput.writeLong(layoutId);
385 objectOutput.writeLong(parentLayoutId);
386
387 if (name == null) {
388 objectOutput.writeUTF(StringPool.BLANK);
389 }
390 else {
391 objectOutput.writeUTF(name);
392 }
393
394 if (title == null) {
395 objectOutput.writeUTF(StringPool.BLANK);
396 }
397 else {
398 objectOutput.writeUTF(title);
399 }
400
401 if (description == null) {
402 objectOutput.writeUTF(StringPool.BLANK);
403 }
404 else {
405 objectOutput.writeUTF(description);
406 }
407
408 if (keywords == null) {
409 objectOutput.writeUTF(StringPool.BLANK);
410 }
411 else {
412 objectOutput.writeUTF(keywords);
413 }
414
415 if (robots == null) {
416 objectOutput.writeUTF(StringPool.BLANK);
417 }
418 else {
419 objectOutput.writeUTF(robots);
420 }
421
422 if (type == null) {
423 objectOutput.writeUTF(StringPool.BLANK);
424 }
425 else {
426 objectOutput.writeUTF(type);
427 }
428
429 if (typeSettings == null) {
430 objectOutput.writeUTF(StringPool.BLANK);
431 }
432 else {
433 objectOutput.writeUTF(typeSettings);
434 }
435
436 objectOutput.writeBoolean(hidden);
437
438 if (friendlyURL == null) {
439 objectOutput.writeUTF(StringPool.BLANK);
440 }
441 else {
442 objectOutput.writeUTF(friendlyURL);
443 }
444
445 objectOutput.writeLong(iconImageId);
446
447 if (themeId == null) {
448 objectOutput.writeUTF(StringPool.BLANK);
449 }
450 else {
451 objectOutput.writeUTF(themeId);
452 }
453
454 if (colorSchemeId == null) {
455 objectOutput.writeUTF(StringPool.BLANK);
456 }
457 else {
458 objectOutput.writeUTF(colorSchemeId);
459 }
460
461 if (wapThemeId == null) {
462 objectOutput.writeUTF(StringPool.BLANK);
463 }
464 else {
465 objectOutput.writeUTF(wapThemeId);
466 }
467
468 if (wapColorSchemeId == null) {
469 objectOutput.writeUTF(StringPool.BLANK);
470 }
471 else {
472 objectOutput.writeUTF(wapColorSchemeId);
473 }
474
475 if (css == null) {
476 objectOutput.writeUTF(StringPool.BLANK);
477 }
478 else {
479 objectOutput.writeUTF(css);
480 }
481
482 objectOutput.writeInt(priority);
483
484 if (layoutPrototypeUuid == null) {
485 objectOutput.writeUTF(StringPool.BLANK);
486 }
487 else {
488 objectOutput.writeUTF(layoutPrototypeUuid);
489 }
490
491 objectOutput.writeBoolean(layoutPrototypeLinkEnabled);
492
493 if (sourcePrototypeLayoutUuid == null) {
494 objectOutput.writeUTF(StringPool.BLANK);
495 }
496 else {
497 objectOutput.writeUTF(sourcePrototypeLayoutUuid);
498 }
499
500 objectOutput.writeLong(lastPublishDate);
501 }
502
503 public long mvccVersion;
504 public String uuid;
505 public long plid;
506 public long groupId;
507 public long companyId;
508 public long userId;
509 public String userName;
510 public long createDate;
511 public long modifiedDate;
512 public boolean privateLayout;
513 public long layoutId;
514 public long parentLayoutId;
515 public String name;
516 public String title;
517 public String description;
518 public String keywords;
519 public String robots;
520 public String type;
521 public String typeSettings;
522 public boolean hidden;
523 public String friendlyURL;
524 public long iconImageId;
525 public String themeId;
526 public String colorSchemeId;
527 public String wapThemeId;
528 public String wapColorSchemeId;
529 public String css;
530 public int priority;
531 public String layoutPrototypeUuid;
532 public boolean layoutPrototypeLinkEnabled;
533 public String sourcePrototypeLayoutUuid;
534 public long lastPublishDate;
535 }