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.softwarecatalog.model.impl;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.bean.AutoEscapeBeanHandler;
020    import com.liferay.portal.kernel.exception.PortalException;
021    import com.liferay.portal.kernel.json.JSON;
022    import com.liferay.portal.kernel.util.DateUtil;
023    import com.liferay.portal.kernel.util.GetterUtil;
024    import com.liferay.portal.kernel.util.ProxyUtil;
025    import com.liferay.portal.kernel.util.StringBundler;
026    import com.liferay.portal.kernel.util.StringPool;
027    import com.liferay.portal.model.CacheModel;
028    import com.liferay.portal.model.User;
029    import com.liferay.portal.model.impl.BaseModelImpl;
030    import com.liferay.portal.service.ServiceContext;
031    import com.liferay.portal.service.UserLocalServiceUtil;
032    
033    import com.liferay.portlet.expando.model.ExpandoBridge;
034    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
035    import com.liferay.portlet.softwarecatalog.model.SCProductVersion;
036    import com.liferay.portlet.softwarecatalog.model.SCProductVersionModel;
037    import com.liferay.portlet.softwarecatalog.model.SCProductVersionSoap;
038    
039    import java.io.Serializable;
040    
041    import java.sql.Types;
042    
043    import java.util.ArrayList;
044    import java.util.Date;
045    import java.util.HashMap;
046    import java.util.List;
047    import java.util.Map;
048    
049    /**
050     * The base model implementation for the SCProductVersion service. Represents a row in the "SCProductVersion" database table, with each column mapped to a property of this class.
051     *
052     * <p>
053     * This implementation and its corresponding interface {@link SCProductVersionModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link SCProductVersionImpl}.
054     * </p>
055     *
056     * @author Brian Wing Shun Chan
057     * @see SCProductVersionImpl
058     * @see SCProductVersion
059     * @see SCProductVersionModel
060     * @generated
061     */
062    @JSON(strict = true)
063    @ProviderType
064    public class SCProductVersionModelImpl extends BaseModelImpl<SCProductVersion>
065            implements SCProductVersionModel {
066            /*
067             * NOTE FOR DEVELOPERS:
068             *
069             * Never modify or reference this class directly. All methods that expect a s c product version model instance should use the {@link SCProductVersion} interface instead.
070             */
071            public static final String TABLE_NAME = "SCProductVersion";
072            public static final Object[][] TABLE_COLUMNS = {
073                            { "productVersionId", Types.BIGINT },
074                            { "companyId", Types.BIGINT },
075                            { "userId", Types.BIGINT },
076                            { "userName", Types.VARCHAR },
077                            { "createDate", Types.TIMESTAMP },
078                            { "modifiedDate", Types.TIMESTAMP },
079                            { "productEntryId", Types.BIGINT },
080                            { "version", Types.VARCHAR },
081                            { "changeLog", Types.VARCHAR },
082                            { "downloadPageURL", Types.VARCHAR },
083                            { "directDownloadURL", Types.VARCHAR },
084                            { "repoStoreArtifact", Types.BOOLEAN }
085                    };
086            public static final Map<String, Integer> TABLE_COLUMNS_MAP = new HashMap<String, Integer>();
087    
088            static {
089                    TABLE_COLUMNS_MAP.put("productVersionId", Types.BIGINT);
090                    TABLE_COLUMNS_MAP.put("companyId", Types.BIGINT);
091                    TABLE_COLUMNS_MAP.put("userId", Types.BIGINT);
092                    TABLE_COLUMNS_MAP.put("userName", Types.VARCHAR);
093                    TABLE_COLUMNS_MAP.put("createDate", Types.TIMESTAMP);
094                    TABLE_COLUMNS_MAP.put("modifiedDate", Types.TIMESTAMP);
095                    TABLE_COLUMNS_MAP.put("productEntryId", Types.BIGINT);
096                    TABLE_COLUMNS_MAP.put("version", Types.VARCHAR);
097                    TABLE_COLUMNS_MAP.put("changeLog", Types.VARCHAR);
098                    TABLE_COLUMNS_MAP.put("downloadPageURL", Types.VARCHAR);
099                    TABLE_COLUMNS_MAP.put("directDownloadURL", Types.VARCHAR);
100                    TABLE_COLUMNS_MAP.put("repoStoreArtifact", Types.BOOLEAN);
101            }
102    
103            public static final String TABLE_SQL_CREATE = "create table SCProductVersion (productVersionId LONG not null primary key,companyId LONG,userId LONG,userName VARCHAR(75) null,createDate DATE null,modifiedDate DATE null,productEntryId LONG,version VARCHAR(75) null,changeLog STRING null,downloadPageURL STRING null,directDownloadURL VARCHAR(2000) null,repoStoreArtifact BOOLEAN)";
104            public static final String TABLE_SQL_DROP = "drop table SCProductVersion";
105            public static final String ORDER_BY_JPQL = " ORDER BY scProductVersion.createDate DESC";
106            public static final String ORDER_BY_SQL = " ORDER BY SCProductVersion.createDate DESC";
107            public static final String DATA_SOURCE = "liferayDataSource";
108            public static final String SESSION_FACTORY = "liferaySessionFactory";
109            public static final String TX_MANAGER = "liferayTransactionManager";
110            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
111                                    "value.object.entity.cache.enabled.com.liferay.portlet.softwarecatalog.model.SCProductVersion"),
112                            true);
113            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
114                                    "value.object.finder.cache.enabled.com.liferay.portlet.softwarecatalog.model.SCProductVersion"),
115                            true);
116            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
117                                    "value.object.column.bitmask.enabled.com.liferay.portlet.softwarecatalog.model.SCProductVersion"),
118                            true);
119            public static final long DIRECTDOWNLOADURL_COLUMN_BITMASK = 1L;
120            public static final long PRODUCTENTRYID_COLUMN_BITMASK = 2L;
121            public static final long CREATEDATE_COLUMN_BITMASK = 4L;
122    
123            /**
124             * Converts the soap model instance into a normal model instance.
125             *
126             * @param soapModel the soap model instance to convert
127             * @return the normal model instance
128             */
129            public static SCProductVersion toModel(SCProductVersionSoap soapModel) {
130                    if (soapModel == null) {
131                            return null;
132                    }
133    
134                    SCProductVersion model = new SCProductVersionImpl();
135    
136                    model.setProductVersionId(soapModel.getProductVersionId());
137                    model.setCompanyId(soapModel.getCompanyId());
138                    model.setUserId(soapModel.getUserId());
139                    model.setUserName(soapModel.getUserName());
140                    model.setCreateDate(soapModel.getCreateDate());
141                    model.setModifiedDate(soapModel.getModifiedDate());
142                    model.setProductEntryId(soapModel.getProductEntryId());
143                    model.setVersion(soapModel.getVersion());
144                    model.setChangeLog(soapModel.getChangeLog());
145                    model.setDownloadPageURL(soapModel.getDownloadPageURL());
146                    model.setDirectDownloadURL(soapModel.getDirectDownloadURL());
147                    model.setRepoStoreArtifact(soapModel.getRepoStoreArtifact());
148    
149                    return model;
150            }
151    
152            /**
153             * Converts the soap model instances into normal model instances.
154             *
155             * @param soapModels the soap model instances to convert
156             * @return the normal model instances
157             */
158            public static List<SCProductVersion> toModels(
159                    SCProductVersionSoap[] soapModels) {
160                    if (soapModels == null) {
161                            return null;
162                    }
163    
164                    List<SCProductVersion> models = new ArrayList<SCProductVersion>(soapModels.length);
165    
166                    for (SCProductVersionSoap soapModel : soapModels) {
167                            models.add(toModel(soapModel));
168                    }
169    
170                    return models;
171            }
172    
173            public static final String MAPPING_TABLE_SCFRAMEWORKVERSI_SCPRODUCTVERS_NAME =
174                    "SCFrameworkVersi_SCProductVers";
175            public static final Object[][] MAPPING_TABLE_SCFRAMEWORKVERSI_SCPRODUCTVERS_COLUMNS =
176                    {
177                            { "companyId", Types.BIGINT },
178                            { "frameworkVersionId", Types.BIGINT },
179                            { "productVersionId", Types.BIGINT }
180                    };
181            public static final String MAPPING_TABLE_SCFRAMEWORKVERSI_SCPRODUCTVERS_SQL_CREATE =
182                    "create table SCFrameworkVersi_SCProductVers (companyId LONG not null,frameworkVersionId LONG not null,productVersionId LONG not null,primary key (companyId, frameworkVersionId, productVersionId))";
183            public static final boolean FINDER_CACHE_ENABLED_SCFRAMEWORKVERSI_SCPRODUCTVERS =
184                    GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
185                                    "value.object.finder.cache.enabled.SCFrameworkVersi_SCProductVers"),
186                            true);
187            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
188                                    "lock.expiration.time.com.liferay.portlet.softwarecatalog.model.SCProductVersion"));
189    
190            public SCProductVersionModelImpl() {
191            }
192    
193            @Override
194            public long getPrimaryKey() {
195                    return _productVersionId;
196            }
197    
198            @Override
199            public void setPrimaryKey(long primaryKey) {
200                    setProductVersionId(primaryKey);
201            }
202    
203            @Override
204            public Serializable getPrimaryKeyObj() {
205                    return _productVersionId;
206            }
207    
208            @Override
209            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
210                    setPrimaryKey(((Long)primaryKeyObj).longValue());
211            }
212    
213            @Override
214            public Class<?> getModelClass() {
215                    return SCProductVersion.class;
216            }
217    
218            @Override
219            public String getModelClassName() {
220                    return SCProductVersion.class.getName();
221            }
222    
223            @Override
224            public Map<String, Object> getModelAttributes() {
225                    Map<String, Object> attributes = new HashMap<String, Object>();
226    
227                    attributes.put("productVersionId", getProductVersionId());
228                    attributes.put("companyId", getCompanyId());
229                    attributes.put("userId", getUserId());
230                    attributes.put("userName", getUserName());
231                    attributes.put("createDate", getCreateDate());
232                    attributes.put("modifiedDate", getModifiedDate());
233                    attributes.put("productEntryId", getProductEntryId());
234                    attributes.put("version", getVersion());
235                    attributes.put("changeLog", getChangeLog());
236                    attributes.put("downloadPageURL", getDownloadPageURL());
237                    attributes.put("directDownloadURL", getDirectDownloadURL());
238                    attributes.put("repoStoreArtifact", getRepoStoreArtifact());
239    
240                    attributes.put("entityCacheEnabled", isEntityCacheEnabled());
241                    attributes.put("finderCacheEnabled", isFinderCacheEnabled());
242    
243                    return attributes;
244            }
245    
246            @Override
247            public void setModelAttributes(Map<String, Object> attributes) {
248                    Long productVersionId = (Long)attributes.get("productVersionId");
249    
250                    if (productVersionId != null) {
251                            setProductVersionId(productVersionId);
252                    }
253    
254                    Long companyId = (Long)attributes.get("companyId");
255    
256                    if (companyId != null) {
257                            setCompanyId(companyId);
258                    }
259    
260                    Long userId = (Long)attributes.get("userId");
261    
262                    if (userId != null) {
263                            setUserId(userId);
264                    }
265    
266                    String userName = (String)attributes.get("userName");
267    
268                    if (userName != null) {
269                            setUserName(userName);
270                    }
271    
272                    Date createDate = (Date)attributes.get("createDate");
273    
274                    if (createDate != null) {
275                            setCreateDate(createDate);
276                    }
277    
278                    Date modifiedDate = (Date)attributes.get("modifiedDate");
279    
280                    if (modifiedDate != null) {
281                            setModifiedDate(modifiedDate);
282                    }
283    
284                    Long productEntryId = (Long)attributes.get("productEntryId");
285    
286                    if (productEntryId != null) {
287                            setProductEntryId(productEntryId);
288                    }
289    
290                    String version = (String)attributes.get("version");
291    
292                    if (version != null) {
293                            setVersion(version);
294                    }
295    
296                    String changeLog = (String)attributes.get("changeLog");
297    
298                    if (changeLog != null) {
299                            setChangeLog(changeLog);
300                    }
301    
302                    String downloadPageURL = (String)attributes.get("downloadPageURL");
303    
304                    if (downloadPageURL != null) {
305                            setDownloadPageURL(downloadPageURL);
306                    }
307    
308                    String directDownloadURL = (String)attributes.get("directDownloadURL");
309    
310                    if (directDownloadURL != null) {
311                            setDirectDownloadURL(directDownloadURL);
312                    }
313    
314                    Boolean repoStoreArtifact = (Boolean)attributes.get("repoStoreArtifact");
315    
316                    if (repoStoreArtifact != null) {
317                            setRepoStoreArtifact(repoStoreArtifact);
318                    }
319            }
320    
321            @JSON
322            @Override
323            public long getProductVersionId() {
324                    return _productVersionId;
325            }
326    
327            @Override
328            public void setProductVersionId(long productVersionId) {
329                    _productVersionId = productVersionId;
330            }
331    
332            @JSON
333            @Override
334            public long getCompanyId() {
335                    return _companyId;
336            }
337    
338            @Override
339            public void setCompanyId(long companyId) {
340                    _companyId = companyId;
341            }
342    
343            @JSON
344            @Override
345            public long getUserId() {
346                    return _userId;
347            }
348    
349            @Override
350            public void setUserId(long userId) {
351                    _userId = userId;
352            }
353    
354            @Override
355            public String getUserUuid() {
356                    try {
357                            User user = UserLocalServiceUtil.getUserById(getUserId());
358    
359                            return user.getUuid();
360                    }
361                    catch (PortalException pe) {
362                            return StringPool.BLANK;
363                    }
364            }
365    
366            @Override
367            public void setUserUuid(String userUuid) {
368            }
369    
370            @JSON
371            @Override
372            public String getUserName() {
373                    if (_userName == null) {
374                            return StringPool.BLANK;
375                    }
376                    else {
377                            return _userName;
378                    }
379            }
380    
381            @Override
382            public void setUserName(String userName) {
383                    _userName = userName;
384            }
385    
386            @JSON
387            @Override
388            public Date getCreateDate() {
389                    return _createDate;
390            }
391    
392            @Override
393            public void setCreateDate(Date createDate) {
394                    _columnBitmask = -1L;
395    
396                    _createDate = createDate;
397            }
398    
399            @JSON
400            @Override
401            public Date getModifiedDate() {
402                    return _modifiedDate;
403            }
404    
405            public boolean hasSetModifiedDate() {
406                    return _setModifiedDate;
407            }
408    
409            @Override
410            public void setModifiedDate(Date modifiedDate) {
411                    _setModifiedDate = true;
412    
413                    _modifiedDate = modifiedDate;
414            }
415    
416            @JSON
417            @Override
418            public long getProductEntryId() {
419                    return _productEntryId;
420            }
421    
422            @Override
423            public void setProductEntryId(long productEntryId) {
424                    _columnBitmask |= PRODUCTENTRYID_COLUMN_BITMASK;
425    
426                    if (!_setOriginalProductEntryId) {
427                            _setOriginalProductEntryId = true;
428    
429                            _originalProductEntryId = _productEntryId;
430                    }
431    
432                    _productEntryId = productEntryId;
433            }
434    
435            public long getOriginalProductEntryId() {
436                    return _originalProductEntryId;
437            }
438    
439            @JSON
440            @Override
441            public String getVersion() {
442                    if (_version == null) {
443                            return StringPool.BLANK;
444                    }
445                    else {
446                            return _version;
447                    }
448            }
449    
450            @Override
451            public void setVersion(String version) {
452                    _version = version;
453            }
454    
455            @JSON
456            @Override
457            public String getChangeLog() {
458                    if (_changeLog == null) {
459                            return StringPool.BLANK;
460                    }
461                    else {
462                            return _changeLog;
463                    }
464            }
465    
466            @Override
467            public void setChangeLog(String changeLog) {
468                    _changeLog = changeLog;
469            }
470    
471            @JSON
472            @Override
473            public String getDownloadPageURL() {
474                    if (_downloadPageURL == null) {
475                            return StringPool.BLANK;
476                    }
477                    else {
478                            return _downloadPageURL;
479                    }
480            }
481    
482            @Override
483            public void setDownloadPageURL(String downloadPageURL) {
484                    _downloadPageURL = downloadPageURL;
485            }
486    
487            @JSON
488            @Override
489            public String getDirectDownloadURL() {
490                    if (_directDownloadURL == null) {
491                            return StringPool.BLANK;
492                    }
493                    else {
494                            return _directDownloadURL;
495                    }
496            }
497    
498            @Override
499            public void setDirectDownloadURL(String directDownloadURL) {
500                    _columnBitmask |= DIRECTDOWNLOADURL_COLUMN_BITMASK;
501    
502                    if (_originalDirectDownloadURL == null) {
503                            _originalDirectDownloadURL = _directDownloadURL;
504                    }
505    
506                    _directDownloadURL = directDownloadURL;
507            }
508    
509            public String getOriginalDirectDownloadURL() {
510                    return GetterUtil.getString(_originalDirectDownloadURL);
511            }
512    
513            @JSON
514            @Override
515            public boolean getRepoStoreArtifact() {
516                    return _repoStoreArtifact;
517            }
518    
519            @Override
520            public boolean isRepoStoreArtifact() {
521                    return _repoStoreArtifact;
522            }
523    
524            @Override
525            public void setRepoStoreArtifact(boolean repoStoreArtifact) {
526                    _repoStoreArtifact = repoStoreArtifact;
527            }
528    
529            public long getColumnBitmask() {
530                    return _columnBitmask;
531            }
532    
533            @Override
534            public ExpandoBridge getExpandoBridge() {
535                    return ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
536                            SCProductVersion.class.getName(), getPrimaryKey());
537            }
538    
539            @Override
540            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
541                    ExpandoBridge expandoBridge = getExpandoBridge();
542    
543                    expandoBridge.setAttributes(serviceContext);
544            }
545    
546            @Override
547            public SCProductVersion toEscapedModel() {
548                    if (_escapedModel == null) {
549                            _escapedModel = (SCProductVersion)ProxyUtil.newProxyInstance(_classLoader,
550                                            _escapedModelInterfaces, new AutoEscapeBeanHandler(this));
551                    }
552    
553                    return _escapedModel;
554            }
555    
556            @Override
557            public Object clone() {
558                    SCProductVersionImpl scProductVersionImpl = new SCProductVersionImpl();
559    
560                    scProductVersionImpl.setProductVersionId(getProductVersionId());
561                    scProductVersionImpl.setCompanyId(getCompanyId());
562                    scProductVersionImpl.setUserId(getUserId());
563                    scProductVersionImpl.setUserName(getUserName());
564                    scProductVersionImpl.setCreateDate(getCreateDate());
565                    scProductVersionImpl.setModifiedDate(getModifiedDate());
566                    scProductVersionImpl.setProductEntryId(getProductEntryId());
567                    scProductVersionImpl.setVersion(getVersion());
568                    scProductVersionImpl.setChangeLog(getChangeLog());
569                    scProductVersionImpl.setDownloadPageURL(getDownloadPageURL());
570                    scProductVersionImpl.setDirectDownloadURL(getDirectDownloadURL());
571                    scProductVersionImpl.setRepoStoreArtifact(getRepoStoreArtifact());
572    
573                    scProductVersionImpl.resetOriginalValues();
574    
575                    return scProductVersionImpl;
576            }
577    
578            @Override
579            public int compareTo(SCProductVersion scProductVersion) {
580                    int value = 0;
581    
582                    value = DateUtil.compareTo(getCreateDate(),
583                                    scProductVersion.getCreateDate());
584    
585                    value = value * -1;
586    
587                    if (value != 0) {
588                            return value;
589                    }
590    
591                    return 0;
592            }
593    
594            @Override
595            public boolean equals(Object obj) {
596                    if (this == obj) {
597                            return true;
598                    }
599    
600                    if (!(obj instanceof SCProductVersion)) {
601                            return false;
602                    }
603    
604                    SCProductVersion scProductVersion = (SCProductVersion)obj;
605    
606                    long primaryKey = scProductVersion.getPrimaryKey();
607    
608                    if (getPrimaryKey() == primaryKey) {
609                            return true;
610                    }
611                    else {
612                            return false;
613                    }
614            }
615    
616            @Override
617            public int hashCode() {
618                    return (int)getPrimaryKey();
619            }
620    
621            @Override
622            public boolean isEntityCacheEnabled() {
623                    return ENTITY_CACHE_ENABLED;
624            }
625    
626            @Override
627            public boolean isFinderCacheEnabled() {
628                    return FINDER_CACHE_ENABLED;
629            }
630    
631            @Override
632            public void resetOriginalValues() {
633                    SCProductVersionModelImpl scProductVersionModelImpl = this;
634    
635                    scProductVersionModelImpl._setModifiedDate = false;
636    
637                    scProductVersionModelImpl._originalProductEntryId = scProductVersionModelImpl._productEntryId;
638    
639                    scProductVersionModelImpl._setOriginalProductEntryId = false;
640    
641                    scProductVersionModelImpl._originalDirectDownloadURL = scProductVersionModelImpl._directDownloadURL;
642    
643                    scProductVersionModelImpl._columnBitmask = 0;
644            }
645    
646            @Override
647            public CacheModel<SCProductVersion> toCacheModel() {
648                    SCProductVersionCacheModel scProductVersionCacheModel = new SCProductVersionCacheModel();
649    
650                    scProductVersionCacheModel.productVersionId = getProductVersionId();
651    
652                    scProductVersionCacheModel.companyId = getCompanyId();
653    
654                    scProductVersionCacheModel.userId = getUserId();
655    
656                    scProductVersionCacheModel.userName = getUserName();
657    
658                    String userName = scProductVersionCacheModel.userName;
659    
660                    if ((userName != null) && (userName.length() == 0)) {
661                            scProductVersionCacheModel.userName = null;
662                    }
663    
664                    Date createDate = getCreateDate();
665    
666                    if (createDate != null) {
667                            scProductVersionCacheModel.createDate = createDate.getTime();
668                    }
669                    else {
670                            scProductVersionCacheModel.createDate = Long.MIN_VALUE;
671                    }
672    
673                    Date modifiedDate = getModifiedDate();
674    
675                    if (modifiedDate != null) {
676                            scProductVersionCacheModel.modifiedDate = modifiedDate.getTime();
677                    }
678                    else {
679                            scProductVersionCacheModel.modifiedDate = Long.MIN_VALUE;
680                    }
681    
682                    scProductVersionCacheModel.productEntryId = getProductEntryId();
683    
684                    scProductVersionCacheModel.version = getVersion();
685    
686                    String version = scProductVersionCacheModel.version;
687    
688                    if ((version != null) && (version.length() == 0)) {
689                            scProductVersionCacheModel.version = null;
690                    }
691    
692                    scProductVersionCacheModel.changeLog = getChangeLog();
693    
694                    String changeLog = scProductVersionCacheModel.changeLog;
695    
696                    if ((changeLog != null) && (changeLog.length() == 0)) {
697                            scProductVersionCacheModel.changeLog = null;
698                    }
699    
700                    scProductVersionCacheModel.downloadPageURL = getDownloadPageURL();
701    
702                    String downloadPageURL = scProductVersionCacheModel.downloadPageURL;
703    
704                    if ((downloadPageURL != null) && (downloadPageURL.length() == 0)) {
705                            scProductVersionCacheModel.downloadPageURL = null;
706                    }
707    
708                    scProductVersionCacheModel.directDownloadURL = getDirectDownloadURL();
709    
710                    String directDownloadURL = scProductVersionCacheModel.directDownloadURL;
711    
712                    if ((directDownloadURL != null) && (directDownloadURL.length() == 0)) {
713                            scProductVersionCacheModel.directDownloadURL = null;
714                    }
715    
716                    scProductVersionCacheModel.repoStoreArtifact = getRepoStoreArtifact();
717    
718                    return scProductVersionCacheModel;
719            }
720    
721            @Override
722            public String toString() {
723                    StringBundler sb = new StringBundler(25);
724    
725                    sb.append("{productVersionId=");
726                    sb.append(getProductVersionId());
727                    sb.append(", companyId=");
728                    sb.append(getCompanyId());
729                    sb.append(", userId=");
730                    sb.append(getUserId());
731                    sb.append(", userName=");
732                    sb.append(getUserName());
733                    sb.append(", createDate=");
734                    sb.append(getCreateDate());
735                    sb.append(", modifiedDate=");
736                    sb.append(getModifiedDate());
737                    sb.append(", productEntryId=");
738                    sb.append(getProductEntryId());
739                    sb.append(", version=");
740                    sb.append(getVersion());
741                    sb.append(", changeLog=");
742                    sb.append(getChangeLog());
743                    sb.append(", downloadPageURL=");
744                    sb.append(getDownloadPageURL());
745                    sb.append(", directDownloadURL=");
746                    sb.append(getDirectDownloadURL());
747                    sb.append(", repoStoreArtifact=");
748                    sb.append(getRepoStoreArtifact());
749                    sb.append("}");
750    
751                    return sb.toString();
752            }
753    
754            @Override
755            public String toXmlString() {
756                    StringBundler sb = new StringBundler(40);
757    
758                    sb.append("<model><model-name>");
759                    sb.append("com.liferay.portlet.softwarecatalog.model.SCProductVersion");
760                    sb.append("</model-name>");
761    
762                    sb.append(
763                            "<column><column-name>productVersionId</column-name><column-value><![CDATA[");
764                    sb.append(getProductVersionId());
765                    sb.append("]]></column-value></column>");
766                    sb.append(
767                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
768                    sb.append(getCompanyId());
769                    sb.append("]]></column-value></column>");
770                    sb.append(
771                            "<column><column-name>userId</column-name><column-value><![CDATA[");
772                    sb.append(getUserId());
773                    sb.append("]]></column-value></column>");
774                    sb.append(
775                            "<column><column-name>userName</column-name><column-value><![CDATA[");
776                    sb.append(getUserName());
777                    sb.append("]]></column-value></column>");
778                    sb.append(
779                            "<column><column-name>createDate</column-name><column-value><![CDATA[");
780                    sb.append(getCreateDate());
781                    sb.append("]]></column-value></column>");
782                    sb.append(
783                            "<column><column-name>modifiedDate</column-name><column-value><![CDATA[");
784                    sb.append(getModifiedDate());
785                    sb.append("]]></column-value></column>");
786                    sb.append(
787                            "<column><column-name>productEntryId</column-name><column-value><![CDATA[");
788                    sb.append(getProductEntryId());
789                    sb.append("]]></column-value></column>");
790                    sb.append(
791                            "<column><column-name>version</column-name><column-value><![CDATA[");
792                    sb.append(getVersion());
793                    sb.append("]]></column-value></column>");
794                    sb.append(
795                            "<column><column-name>changeLog</column-name><column-value><![CDATA[");
796                    sb.append(getChangeLog());
797                    sb.append("]]></column-value></column>");
798                    sb.append(
799                            "<column><column-name>downloadPageURL</column-name><column-value><![CDATA[");
800                    sb.append(getDownloadPageURL());
801                    sb.append("]]></column-value></column>");
802                    sb.append(
803                            "<column><column-name>directDownloadURL</column-name><column-value><![CDATA[");
804                    sb.append(getDirectDownloadURL());
805                    sb.append("]]></column-value></column>");
806                    sb.append(
807                            "<column><column-name>repoStoreArtifact</column-name><column-value><![CDATA[");
808                    sb.append(getRepoStoreArtifact());
809                    sb.append("]]></column-value></column>");
810    
811                    sb.append("</model>");
812    
813                    return sb.toString();
814            }
815    
816            private static final ClassLoader _classLoader = SCProductVersion.class.getClassLoader();
817            private static final Class<?>[] _escapedModelInterfaces = new Class[] {
818                            SCProductVersion.class
819                    };
820            private long _productVersionId;
821            private long _companyId;
822            private long _userId;
823            private String _userName;
824            private Date _createDate;
825            private Date _modifiedDate;
826            private boolean _setModifiedDate;
827            private long _productEntryId;
828            private long _originalProductEntryId;
829            private boolean _setOriginalProductEntryId;
830            private String _version;
831            private String _changeLog;
832            private String _downloadPageURL;
833            private String _directDownloadURL;
834            private String _originalDirectDownloadURL;
835            private boolean _repoStoreArtifact;
836            private long _columnBitmask;
837            private SCProductVersion _escapedModel;
838    }