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.mobiledevicerules.model.impl;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.LocaleException;
020    import com.liferay.portal.kernel.bean.AutoEscapeBeanHandler;
021    import com.liferay.portal.kernel.exception.PortalException;
022    import com.liferay.portal.kernel.json.JSON;
023    import com.liferay.portal.kernel.util.GetterUtil;
024    import com.liferay.portal.kernel.util.LocaleUtil;
025    import com.liferay.portal.kernel.util.LocalizationUtil;
026    import com.liferay.portal.kernel.util.ProxyUtil;
027    import com.liferay.portal.kernel.util.StringBundler;
028    import com.liferay.portal.kernel.util.StringPool;
029    import com.liferay.portal.kernel.util.Validator;
030    import com.liferay.portal.model.CacheModel;
031    import com.liferay.portal.model.User;
032    import com.liferay.portal.model.impl.BaseModelImpl;
033    import com.liferay.portal.service.ServiceContext;
034    import com.liferay.portal.service.UserLocalServiceUtil;
035    import com.liferay.portal.util.PortalUtil;
036    
037    import com.liferay.portlet.expando.model.ExpandoBridge;
038    import com.liferay.portlet.expando.util.ExpandoBridgeFactoryUtil;
039    import com.liferay.portlet.exportimport.lar.StagedModelType;
040    import com.liferay.portlet.mobiledevicerules.model.MDRRule;
041    import com.liferay.portlet.mobiledevicerules.model.MDRRuleModel;
042    import com.liferay.portlet.mobiledevicerules.model.MDRRuleSoap;
043    
044    import java.io.Serializable;
045    
046    import java.sql.Types;
047    
048    import java.util.ArrayList;
049    import java.util.Date;
050    import java.util.HashMap;
051    import java.util.List;
052    import java.util.Locale;
053    import java.util.Map;
054    import java.util.Set;
055    import java.util.TreeSet;
056    
057    /**
058     * The base model implementation for the MDRRule service. Represents a row in the "MDRRule" database table, with each column mapped to a property of this class.
059     *
060     * <p>
061     * This implementation and its corresponding interface {@link MDRRuleModel} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link MDRRuleImpl}.
062     * </p>
063     *
064     * @author Edward C. Han
065     * @see MDRRuleImpl
066     * @see MDRRule
067     * @see MDRRuleModel
068     * @generated
069     */
070    @JSON(strict = true)
071    @ProviderType
072    public class MDRRuleModelImpl extends BaseModelImpl<MDRRule>
073            implements MDRRuleModel {
074            /*
075             * NOTE FOR DEVELOPERS:
076             *
077             * Never modify or reference this class directly. All methods that expect a m d r rule model instance should use the {@link MDRRule} interface instead.
078             */
079            public static final String TABLE_NAME = "MDRRule";
080            public static final Object[][] TABLE_COLUMNS = {
081                            { "uuid_", Types.VARCHAR },
082                            { "ruleId", Types.BIGINT },
083                            { "groupId", Types.BIGINT },
084                            { "companyId", Types.BIGINT },
085                            { "userId", Types.BIGINT },
086                            { "userName", Types.VARCHAR },
087                            { "createDate", Types.TIMESTAMP },
088                            { "modifiedDate", Types.TIMESTAMP },
089                            { "ruleGroupId", Types.BIGINT },
090                            { "name", Types.VARCHAR },
091                            { "description", Types.VARCHAR },
092                            { "type_", Types.VARCHAR },
093                            { "typeSettings", Types.CLOB }
094                    };
095            public static final String TABLE_SQL_CREATE = "create table MDRRule (uuid_ VARCHAR(75) null,ruleId LONG not null primary key,groupId LONG,companyId LONG,userId LONG,userName VARCHAR(75) null,createDate DATE null,modifiedDate DATE null,ruleGroupId LONG,name STRING null,description STRING null,type_ VARCHAR(255) null,typeSettings TEXT null)";
096            public static final String TABLE_SQL_DROP = "drop table MDRRule";
097            public static final String ORDER_BY_JPQL = " ORDER BY mdrRule.ruleId ASC";
098            public static final String ORDER_BY_SQL = " ORDER BY MDRRule.ruleId ASC";
099            public static final String DATA_SOURCE = "liferayDataSource";
100            public static final String SESSION_FACTORY = "liferaySessionFactory";
101            public static final String TX_MANAGER = "liferayTransactionManager";
102            public static final boolean ENTITY_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
103                                    "value.object.entity.cache.enabled.com.liferay.portlet.mobiledevicerules.model.MDRRule"),
104                            true);
105            public static final boolean FINDER_CACHE_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
106                                    "value.object.finder.cache.enabled.com.liferay.portlet.mobiledevicerules.model.MDRRule"),
107                            true);
108            public static final boolean COLUMN_BITMASK_ENABLED = GetterUtil.getBoolean(com.liferay.portal.util.PropsUtil.get(
109                                    "value.object.column.bitmask.enabled.com.liferay.portlet.mobiledevicerules.model.MDRRule"),
110                            true);
111            public static final long COMPANYID_COLUMN_BITMASK = 1L;
112            public static final long GROUPID_COLUMN_BITMASK = 2L;
113            public static final long RULEGROUPID_COLUMN_BITMASK = 4L;
114            public static final long UUID_COLUMN_BITMASK = 8L;
115            public static final long RULEID_COLUMN_BITMASK = 16L;
116    
117            /**
118             * Converts the soap model instance into a normal model instance.
119             *
120             * @param soapModel the soap model instance to convert
121             * @return the normal model instance
122             */
123            public static MDRRule toModel(MDRRuleSoap soapModel) {
124                    if (soapModel == null) {
125                            return null;
126                    }
127    
128                    MDRRule model = new MDRRuleImpl();
129    
130                    model.setUuid(soapModel.getUuid());
131                    model.setRuleId(soapModel.getRuleId());
132                    model.setGroupId(soapModel.getGroupId());
133                    model.setCompanyId(soapModel.getCompanyId());
134                    model.setUserId(soapModel.getUserId());
135                    model.setUserName(soapModel.getUserName());
136                    model.setCreateDate(soapModel.getCreateDate());
137                    model.setModifiedDate(soapModel.getModifiedDate());
138                    model.setRuleGroupId(soapModel.getRuleGroupId());
139                    model.setName(soapModel.getName());
140                    model.setDescription(soapModel.getDescription());
141                    model.setType(soapModel.getType());
142                    model.setTypeSettings(soapModel.getTypeSettings());
143    
144                    return model;
145            }
146    
147            /**
148             * Converts the soap model instances into normal model instances.
149             *
150             * @param soapModels the soap model instances to convert
151             * @return the normal model instances
152             */
153            public static List<MDRRule> toModels(MDRRuleSoap[] soapModels) {
154                    if (soapModels == null) {
155                            return null;
156                    }
157    
158                    List<MDRRule> models = new ArrayList<MDRRule>(soapModels.length);
159    
160                    for (MDRRuleSoap soapModel : soapModels) {
161                            models.add(toModel(soapModel));
162                    }
163    
164                    return models;
165            }
166    
167            public static final long LOCK_EXPIRATION_TIME = GetterUtil.getLong(com.liferay.portal.util.PropsUtil.get(
168                                    "lock.expiration.time.com.liferay.portlet.mobiledevicerules.model.MDRRule"));
169    
170            public MDRRuleModelImpl() {
171            }
172    
173            @Override
174            public long getPrimaryKey() {
175                    return _ruleId;
176            }
177    
178            @Override
179            public void setPrimaryKey(long primaryKey) {
180                    setRuleId(primaryKey);
181            }
182    
183            @Override
184            public Serializable getPrimaryKeyObj() {
185                    return _ruleId;
186            }
187    
188            @Override
189            public void setPrimaryKeyObj(Serializable primaryKeyObj) {
190                    setPrimaryKey(((Long)primaryKeyObj).longValue());
191            }
192    
193            @Override
194            public Class<?> getModelClass() {
195                    return MDRRule.class;
196            }
197    
198            @Override
199            public String getModelClassName() {
200                    return MDRRule.class.getName();
201            }
202    
203            @Override
204            public Map<String, Object> getModelAttributes() {
205                    Map<String, Object> attributes = new HashMap<String, Object>();
206    
207                    attributes.put("uuid", getUuid());
208                    attributes.put("ruleId", getRuleId());
209                    attributes.put("groupId", getGroupId());
210                    attributes.put("companyId", getCompanyId());
211                    attributes.put("userId", getUserId());
212                    attributes.put("userName", getUserName());
213                    attributes.put("createDate", getCreateDate());
214                    attributes.put("modifiedDate", getModifiedDate());
215                    attributes.put("ruleGroupId", getRuleGroupId());
216                    attributes.put("name", getName());
217                    attributes.put("description", getDescription());
218                    attributes.put("type", getType());
219                    attributes.put("typeSettings", getTypeSettings());
220    
221                    attributes.put("entityCacheEnabled", isEntityCacheEnabled());
222                    attributes.put("finderCacheEnabled", isFinderCacheEnabled());
223    
224                    return attributes;
225            }
226    
227            @Override
228            public void setModelAttributes(Map<String, Object> attributes) {
229                    String uuid = (String)attributes.get("uuid");
230    
231                    if (uuid != null) {
232                            setUuid(uuid);
233                    }
234    
235                    Long ruleId = (Long)attributes.get("ruleId");
236    
237                    if (ruleId != null) {
238                            setRuleId(ruleId);
239                    }
240    
241                    Long groupId = (Long)attributes.get("groupId");
242    
243                    if (groupId != null) {
244                            setGroupId(groupId);
245                    }
246    
247                    Long companyId = (Long)attributes.get("companyId");
248    
249                    if (companyId != null) {
250                            setCompanyId(companyId);
251                    }
252    
253                    Long userId = (Long)attributes.get("userId");
254    
255                    if (userId != null) {
256                            setUserId(userId);
257                    }
258    
259                    String userName = (String)attributes.get("userName");
260    
261                    if (userName != null) {
262                            setUserName(userName);
263                    }
264    
265                    Date createDate = (Date)attributes.get("createDate");
266    
267                    if (createDate != null) {
268                            setCreateDate(createDate);
269                    }
270    
271                    Date modifiedDate = (Date)attributes.get("modifiedDate");
272    
273                    if (modifiedDate != null) {
274                            setModifiedDate(modifiedDate);
275                    }
276    
277                    Long ruleGroupId = (Long)attributes.get("ruleGroupId");
278    
279                    if (ruleGroupId != null) {
280                            setRuleGroupId(ruleGroupId);
281                    }
282    
283                    String name = (String)attributes.get("name");
284    
285                    if (name != null) {
286                            setName(name);
287                    }
288    
289                    String description = (String)attributes.get("description");
290    
291                    if (description != null) {
292                            setDescription(description);
293                    }
294    
295                    String type = (String)attributes.get("type");
296    
297                    if (type != null) {
298                            setType(type);
299                    }
300    
301                    String typeSettings = (String)attributes.get("typeSettings");
302    
303                    if (typeSettings != null) {
304                            setTypeSettings(typeSettings);
305                    }
306            }
307    
308            @JSON
309            @Override
310            public String getUuid() {
311                    if (_uuid == null) {
312                            return StringPool.BLANK;
313                    }
314                    else {
315                            return _uuid;
316                    }
317            }
318    
319            @Override
320            public void setUuid(String uuid) {
321                    if (_originalUuid == null) {
322                            _originalUuid = _uuid;
323                    }
324    
325                    _uuid = uuid;
326            }
327    
328            public String getOriginalUuid() {
329                    return GetterUtil.getString(_originalUuid);
330            }
331    
332            @JSON
333            @Override
334            public long getRuleId() {
335                    return _ruleId;
336            }
337    
338            @Override
339            public void setRuleId(long ruleId) {
340                    _ruleId = ruleId;
341            }
342    
343            @JSON
344            @Override
345            public long getGroupId() {
346                    return _groupId;
347            }
348    
349            @Override
350            public void setGroupId(long groupId) {
351                    _columnBitmask |= GROUPID_COLUMN_BITMASK;
352    
353                    if (!_setOriginalGroupId) {
354                            _setOriginalGroupId = true;
355    
356                            _originalGroupId = _groupId;
357                    }
358    
359                    _groupId = groupId;
360            }
361    
362            public long getOriginalGroupId() {
363                    return _originalGroupId;
364            }
365    
366            @JSON
367            @Override
368            public long getCompanyId() {
369                    return _companyId;
370            }
371    
372            @Override
373            public void setCompanyId(long companyId) {
374                    _columnBitmask |= COMPANYID_COLUMN_BITMASK;
375    
376                    if (!_setOriginalCompanyId) {
377                            _setOriginalCompanyId = true;
378    
379                            _originalCompanyId = _companyId;
380                    }
381    
382                    _companyId = companyId;
383            }
384    
385            public long getOriginalCompanyId() {
386                    return _originalCompanyId;
387            }
388    
389            @JSON
390            @Override
391            public long getUserId() {
392                    return _userId;
393            }
394    
395            @Override
396            public void setUserId(long userId) {
397                    _userId = userId;
398            }
399    
400            @Override
401            public String getUserUuid() {
402                    try {
403                            User user = UserLocalServiceUtil.getUserById(getUserId());
404    
405                            return user.getUuid();
406                    }
407                    catch (PortalException pe) {
408                            return StringPool.BLANK;
409                    }
410            }
411    
412            @Override
413            public void setUserUuid(String userUuid) {
414            }
415    
416            @JSON
417            @Override
418            public String getUserName() {
419                    if (_userName == null) {
420                            return StringPool.BLANK;
421                    }
422                    else {
423                            return _userName;
424                    }
425            }
426    
427            @Override
428            public void setUserName(String userName) {
429                    _userName = userName;
430            }
431    
432            @JSON
433            @Override
434            public Date getCreateDate() {
435                    return _createDate;
436            }
437    
438            @Override
439            public void setCreateDate(Date createDate) {
440                    _createDate = createDate;
441            }
442    
443            @JSON
444            @Override
445            public Date getModifiedDate() {
446                    return _modifiedDate;
447            }
448    
449            public boolean hasSetModifiedDate() {
450                    return _setModifiedDate;
451            }
452    
453            @Override
454            public void setModifiedDate(Date modifiedDate) {
455                    _setModifiedDate = true;
456    
457                    _modifiedDate = modifiedDate;
458            }
459    
460            @JSON
461            @Override
462            public long getRuleGroupId() {
463                    return _ruleGroupId;
464            }
465    
466            @Override
467            public void setRuleGroupId(long ruleGroupId) {
468                    _columnBitmask |= RULEGROUPID_COLUMN_BITMASK;
469    
470                    if (!_setOriginalRuleGroupId) {
471                            _setOriginalRuleGroupId = true;
472    
473                            _originalRuleGroupId = _ruleGroupId;
474                    }
475    
476                    _ruleGroupId = ruleGroupId;
477            }
478    
479            public long getOriginalRuleGroupId() {
480                    return _originalRuleGroupId;
481            }
482    
483            @JSON
484            @Override
485            public String getName() {
486                    if (_name == null) {
487                            return StringPool.BLANK;
488                    }
489                    else {
490                            return _name;
491                    }
492            }
493    
494            @Override
495            public String getName(Locale locale) {
496                    String languageId = LocaleUtil.toLanguageId(locale);
497    
498                    return getName(languageId);
499            }
500    
501            @Override
502            public String getName(Locale locale, boolean useDefault) {
503                    String languageId = LocaleUtil.toLanguageId(locale);
504    
505                    return getName(languageId, useDefault);
506            }
507    
508            @Override
509            public String getName(String languageId) {
510                    return LocalizationUtil.getLocalization(getName(), languageId);
511            }
512    
513            @Override
514            public String getName(String languageId, boolean useDefault) {
515                    return LocalizationUtil.getLocalization(getName(), languageId,
516                            useDefault);
517            }
518    
519            @Override
520            public String getNameCurrentLanguageId() {
521                    return _nameCurrentLanguageId;
522            }
523    
524            @JSON
525            @Override
526            public String getNameCurrentValue() {
527                    Locale locale = getLocale(_nameCurrentLanguageId);
528    
529                    return getName(locale);
530            }
531    
532            @Override
533            public Map<Locale, String> getNameMap() {
534                    return LocalizationUtil.getLocalizationMap(getName());
535            }
536    
537            @Override
538            public void setName(String name) {
539                    _name = name;
540            }
541    
542            @Override
543            public void setName(String name, Locale locale) {
544                    setName(name, locale, LocaleUtil.getSiteDefault());
545            }
546    
547            @Override
548            public void setName(String name, Locale locale, Locale defaultLocale) {
549                    String languageId = LocaleUtil.toLanguageId(locale);
550                    String defaultLanguageId = LocaleUtil.toLanguageId(defaultLocale);
551    
552                    if (Validator.isNotNull(name)) {
553                            setName(LocalizationUtil.updateLocalization(getName(), "Name",
554                                            name, languageId, defaultLanguageId));
555                    }
556                    else {
557                            setName(LocalizationUtil.removeLocalization(getName(), "Name",
558                                            languageId));
559                    }
560            }
561    
562            @Override
563            public void setNameCurrentLanguageId(String languageId) {
564                    _nameCurrentLanguageId = languageId;
565            }
566    
567            @Override
568            public void setNameMap(Map<Locale, String> nameMap) {
569                    setNameMap(nameMap, LocaleUtil.getSiteDefault());
570            }
571    
572            @Override
573            public void setNameMap(Map<Locale, String> nameMap, Locale defaultLocale) {
574                    if (nameMap == null) {
575                            return;
576                    }
577    
578                    setName(LocalizationUtil.updateLocalization(nameMap, getName(), "Name",
579                                    LocaleUtil.toLanguageId(defaultLocale)));
580            }
581    
582            @JSON
583            @Override
584            public String getDescription() {
585                    if (_description == null) {
586                            return StringPool.BLANK;
587                    }
588                    else {
589                            return _description;
590                    }
591            }
592    
593            @Override
594            public String getDescription(Locale locale) {
595                    String languageId = LocaleUtil.toLanguageId(locale);
596    
597                    return getDescription(languageId);
598            }
599    
600            @Override
601            public String getDescription(Locale locale, boolean useDefault) {
602                    String languageId = LocaleUtil.toLanguageId(locale);
603    
604                    return getDescription(languageId, useDefault);
605            }
606    
607            @Override
608            public String getDescription(String languageId) {
609                    return LocalizationUtil.getLocalization(getDescription(), languageId);
610            }
611    
612            @Override
613            public String getDescription(String languageId, boolean useDefault) {
614                    return LocalizationUtil.getLocalization(getDescription(), languageId,
615                            useDefault);
616            }
617    
618            @Override
619            public String getDescriptionCurrentLanguageId() {
620                    return _descriptionCurrentLanguageId;
621            }
622    
623            @JSON
624            @Override
625            public String getDescriptionCurrentValue() {
626                    Locale locale = getLocale(_descriptionCurrentLanguageId);
627    
628                    return getDescription(locale);
629            }
630    
631            @Override
632            public Map<Locale, String> getDescriptionMap() {
633                    return LocalizationUtil.getLocalizationMap(getDescription());
634            }
635    
636            @Override
637            public void setDescription(String description) {
638                    _description = description;
639            }
640    
641            @Override
642            public void setDescription(String description, Locale locale) {
643                    setDescription(description, locale, LocaleUtil.getSiteDefault());
644            }
645    
646            @Override
647            public void setDescription(String description, Locale locale,
648                    Locale defaultLocale) {
649                    String languageId = LocaleUtil.toLanguageId(locale);
650                    String defaultLanguageId = LocaleUtil.toLanguageId(defaultLocale);
651    
652                    if (Validator.isNotNull(description)) {
653                            setDescription(LocalizationUtil.updateLocalization(
654                                            getDescription(), "Description", description, languageId,
655                                            defaultLanguageId));
656                    }
657                    else {
658                            setDescription(LocalizationUtil.removeLocalization(
659                                            getDescription(), "Description", languageId));
660                    }
661            }
662    
663            @Override
664            public void setDescriptionCurrentLanguageId(String languageId) {
665                    _descriptionCurrentLanguageId = languageId;
666            }
667    
668            @Override
669            public void setDescriptionMap(Map<Locale, String> descriptionMap) {
670                    setDescriptionMap(descriptionMap, LocaleUtil.getSiteDefault());
671            }
672    
673            @Override
674            public void setDescriptionMap(Map<Locale, String> descriptionMap,
675                    Locale defaultLocale) {
676                    if (descriptionMap == null) {
677                            return;
678                    }
679    
680                    setDescription(LocalizationUtil.updateLocalization(descriptionMap,
681                                    getDescription(), "Description",
682                                    LocaleUtil.toLanguageId(defaultLocale)));
683            }
684    
685            @JSON
686            @Override
687            public String getType() {
688                    if (_type == null) {
689                            return StringPool.BLANK;
690                    }
691                    else {
692                            return _type;
693                    }
694            }
695    
696            @Override
697            public void setType(String type) {
698                    _type = type;
699            }
700    
701            @JSON
702            @Override
703            public String getTypeSettings() {
704                    if (_typeSettings == null) {
705                            return StringPool.BLANK;
706                    }
707                    else {
708                            return _typeSettings;
709                    }
710            }
711    
712            @Override
713            public void setTypeSettings(String typeSettings) {
714                    _typeSettings = typeSettings;
715            }
716    
717            @Override
718            public StagedModelType getStagedModelType() {
719                    return new StagedModelType(PortalUtil.getClassNameId(
720                                    MDRRule.class.getName()));
721            }
722    
723            public long getColumnBitmask() {
724                    return _columnBitmask;
725            }
726    
727            @Override
728            public ExpandoBridge getExpandoBridge() {
729                    return ExpandoBridgeFactoryUtil.getExpandoBridge(getCompanyId(),
730                            MDRRule.class.getName(), getPrimaryKey());
731            }
732    
733            @Override
734            public void setExpandoBridgeAttributes(ServiceContext serviceContext) {
735                    ExpandoBridge expandoBridge = getExpandoBridge();
736    
737                    expandoBridge.setAttributes(serviceContext);
738            }
739    
740            @Override
741            public String[] getAvailableLanguageIds() {
742                    Set<String> availableLanguageIds = new TreeSet<String>();
743    
744                    Map<Locale, String> nameMap = getNameMap();
745    
746                    for (Map.Entry<Locale, String> entry : nameMap.entrySet()) {
747                            Locale locale = entry.getKey();
748                            String value = entry.getValue();
749    
750                            if (Validator.isNotNull(value)) {
751                                    availableLanguageIds.add(LocaleUtil.toLanguageId(locale));
752                            }
753                    }
754    
755                    Map<Locale, String> descriptionMap = getDescriptionMap();
756    
757                    for (Map.Entry<Locale, String> entry : descriptionMap.entrySet()) {
758                            Locale locale = entry.getKey();
759                            String value = entry.getValue();
760    
761                            if (Validator.isNotNull(value)) {
762                                    availableLanguageIds.add(LocaleUtil.toLanguageId(locale));
763                            }
764                    }
765    
766                    return availableLanguageIds.toArray(new String[availableLanguageIds.size()]);
767            }
768    
769            @Override
770            public String getDefaultLanguageId() {
771                    String xml = getName();
772    
773                    if (xml == null) {
774                            return StringPool.BLANK;
775                    }
776    
777                    Locale defaultLocale = LocaleUtil.getSiteDefault();
778    
779                    return LocalizationUtil.getDefaultLanguageId(xml, defaultLocale);
780            }
781    
782            @Override
783            public void prepareLocalizedFieldsForImport() throws LocaleException {
784                    Locale defaultLocale = LocaleUtil.fromLanguageId(getDefaultLanguageId());
785    
786                    Locale[] availableLocales = LocaleUtil.fromLanguageIds(getAvailableLanguageIds());
787    
788                    Locale defaultImportLocale = LocalizationUtil.getDefaultImportLocale(MDRRule.class.getName(),
789                                    getPrimaryKey(), defaultLocale, availableLocales);
790    
791                    prepareLocalizedFieldsForImport(defaultImportLocale);
792            }
793    
794            @Override
795            @SuppressWarnings("unused")
796            public void prepareLocalizedFieldsForImport(Locale defaultImportLocale)
797                    throws LocaleException {
798                    Locale defaultLocale = LocaleUtil.getSiteDefault();
799    
800                    String modelDefaultLanguageId = getDefaultLanguageId();
801    
802                    String name = getName(defaultLocale);
803    
804                    if (Validator.isNull(name)) {
805                            setName(getName(modelDefaultLanguageId), defaultLocale);
806                    }
807                    else {
808                            setName(getName(defaultLocale), defaultLocale, defaultLocale);
809                    }
810    
811                    String description = getDescription(defaultLocale);
812    
813                    if (Validator.isNull(description)) {
814                            setDescription(getDescription(modelDefaultLanguageId), defaultLocale);
815                    }
816                    else {
817                            setDescription(getDescription(defaultLocale), defaultLocale,
818                                    defaultLocale);
819                    }
820            }
821    
822            @Override
823            public MDRRule toEscapedModel() {
824                    if (_escapedModel == null) {
825                            _escapedModel = (MDRRule)ProxyUtil.newProxyInstance(_classLoader,
826                                            _escapedModelInterfaces, new AutoEscapeBeanHandler(this));
827                    }
828    
829                    return _escapedModel;
830            }
831    
832            @Override
833            public Object clone() {
834                    MDRRuleImpl mdrRuleImpl = new MDRRuleImpl();
835    
836                    mdrRuleImpl.setUuid(getUuid());
837                    mdrRuleImpl.setRuleId(getRuleId());
838                    mdrRuleImpl.setGroupId(getGroupId());
839                    mdrRuleImpl.setCompanyId(getCompanyId());
840                    mdrRuleImpl.setUserId(getUserId());
841                    mdrRuleImpl.setUserName(getUserName());
842                    mdrRuleImpl.setCreateDate(getCreateDate());
843                    mdrRuleImpl.setModifiedDate(getModifiedDate());
844                    mdrRuleImpl.setRuleGroupId(getRuleGroupId());
845                    mdrRuleImpl.setName(getName());
846                    mdrRuleImpl.setDescription(getDescription());
847                    mdrRuleImpl.setType(getType());
848                    mdrRuleImpl.setTypeSettings(getTypeSettings());
849    
850                    mdrRuleImpl.resetOriginalValues();
851    
852                    return mdrRuleImpl;
853            }
854    
855            @Override
856            public int compareTo(MDRRule mdrRule) {
857                    long primaryKey = mdrRule.getPrimaryKey();
858    
859                    if (getPrimaryKey() < primaryKey) {
860                            return -1;
861                    }
862                    else if (getPrimaryKey() > primaryKey) {
863                            return 1;
864                    }
865                    else {
866                            return 0;
867                    }
868            }
869    
870            @Override
871            public boolean equals(Object obj) {
872                    if (this == obj) {
873                            return true;
874                    }
875    
876                    if (!(obj instanceof MDRRule)) {
877                            return false;
878                    }
879    
880                    MDRRule mdrRule = (MDRRule)obj;
881    
882                    long primaryKey = mdrRule.getPrimaryKey();
883    
884                    if (getPrimaryKey() == primaryKey) {
885                            return true;
886                    }
887                    else {
888                            return false;
889                    }
890            }
891    
892            @Override
893            public int hashCode() {
894                    return (int)getPrimaryKey();
895            }
896    
897            @Override
898            public boolean isEntityCacheEnabled() {
899                    return ENTITY_CACHE_ENABLED;
900            }
901    
902            @Override
903            public boolean isFinderCacheEnabled() {
904                    return FINDER_CACHE_ENABLED;
905            }
906    
907            @Override
908            public void resetOriginalValues() {
909                    MDRRuleModelImpl mdrRuleModelImpl = this;
910    
911                    mdrRuleModelImpl._originalUuid = mdrRuleModelImpl._uuid;
912    
913                    mdrRuleModelImpl._originalGroupId = mdrRuleModelImpl._groupId;
914    
915                    mdrRuleModelImpl._setOriginalGroupId = false;
916    
917                    mdrRuleModelImpl._originalCompanyId = mdrRuleModelImpl._companyId;
918    
919                    mdrRuleModelImpl._setOriginalCompanyId = false;
920    
921                    mdrRuleModelImpl._setModifiedDate = false;
922    
923                    mdrRuleModelImpl._originalRuleGroupId = mdrRuleModelImpl._ruleGroupId;
924    
925                    mdrRuleModelImpl._setOriginalRuleGroupId = false;
926    
927                    mdrRuleModelImpl._columnBitmask = 0;
928            }
929    
930            @Override
931            public CacheModel<MDRRule> toCacheModel() {
932                    MDRRuleCacheModel mdrRuleCacheModel = new MDRRuleCacheModel();
933    
934                    mdrRuleCacheModel.uuid = getUuid();
935    
936                    String uuid = mdrRuleCacheModel.uuid;
937    
938                    if ((uuid != null) && (uuid.length() == 0)) {
939                            mdrRuleCacheModel.uuid = null;
940                    }
941    
942                    mdrRuleCacheModel.ruleId = getRuleId();
943    
944                    mdrRuleCacheModel.groupId = getGroupId();
945    
946                    mdrRuleCacheModel.companyId = getCompanyId();
947    
948                    mdrRuleCacheModel.userId = getUserId();
949    
950                    mdrRuleCacheModel.userName = getUserName();
951    
952                    String userName = mdrRuleCacheModel.userName;
953    
954                    if ((userName != null) && (userName.length() == 0)) {
955                            mdrRuleCacheModel.userName = null;
956                    }
957    
958                    Date createDate = getCreateDate();
959    
960                    if (createDate != null) {
961                            mdrRuleCacheModel.createDate = createDate.getTime();
962                    }
963                    else {
964                            mdrRuleCacheModel.createDate = Long.MIN_VALUE;
965                    }
966    
967                    Date modifiedDate = getModifiedDate();
968    
969                    if (modifiedDate != null) {
970                            mdrRuleCacheModel.modifiedDate = modifiedDate.getTime();
971                    }
972                    else {
973                            mdrRuleCacheModel.modifiedDate = Long.MIN_VALUE;
974                    }
975    
976                    mdrRuleCacheModel.ruleGroupId = getRuleGroupId();
977    
978                    mdrRuleCacheModel.name = getName();
979    
980                    String name = mdrRuleCacheModel.name;
981    
982                    if ((name != null) && (name.length() == 0)) {
983                            mdrRuleCacheModel.name = null;
984                    }
985    
986                    mdrRuleCacheModel.description = getDescription();
987    
988                    String description = mdrRuleCacheModel.description;
989    
990                    if ((description != null) && (description.length() == 0)) {
991                            mdrRuleCacheModel.description = null;
992                    }
993    
994                    mdrRuleCacheModel.type = getType();
995    
996                    String type = mdrRuleCacheModel.type;
997    
998                    if ((type != null) && (type.length() == 0)) {
999                            mdrRuleCacheModel.type = null;
1000                    }
1001    
1002                    mdrRuleCacheModel.typeSettings = getTypeSettings();
1003    
1004                    String typeSettings = mdrRuleCacheModel.typeSettings;
1005    
1006                    if ((typeSettings != null) && (typeSettings.length() == 0)) {
1007                            mdrRuleCacheModel.typeSettings = null;
1008                    }
1009    
1010                    return mdrRuleCacheModel;
1011            }
1012    
1013            @Override
1014            public String toString() {
1015                    StringBundler sb = new StringBundler(27);
1016    
1017                    sb.append("{uuid=");
1018                    sb.append(getUuid());
1019                    sb.append(", ruleId=");
1020                    sb.append(getRuleId());
1021                    sb.append(", groupId=");
1022                    sb.append(getGroupId());
1023                    sb.append(", companyId=");
1024                    sb.append(getCompanyId());
1025                    sb.append(", userId=");
1026                    sb.append(getUserId());
1027                    sb.append(", userName=");
1028                    sb.append(getUserName());
1029                    sb.append(", createDate=");
1030                    sb.append(getCreateDate());
1031                    sb.append(", modifiedDate=");
1032                    sb.append(getModifiedDate());
1033                    sb.append(", ruleGroupId=");
1034                    sb.append(getRuleGroupId());
1035                    sb.append(", name=");
1036                    sb.append(getName());
1037                    sb.append(", description=");
1038                    sb.append(getDescription());
1039                    sb.append(", type=");
1040                    sb.append(getType());
1041                    sb.append(", typeSettings=");
1042                    sb.append(getTypeSettings());
1043                    sb.append("}");
1044    
1045                    return sb.toString();
1046            }
1047    
1048            @Override
1049            public String toXmlString() {
1050                    StringBundler sb = new StringBundler(43);
1051    
1052                    sb.append("<model><model-name>");
1053                    sb.append("com.liferay.portlet.mobiledevicerules.model.MDRRule");
1054                    sb.append("</model-name>");
1055    
1056                    sb.append(
1057                            "<column><column-name>uuid</column-name><column-value><![CDATA[");
1058                    sb.append(getUuid());
1059                    sb.append("]]></column-value></column>");
1060                    sb.append(
1061                            "<column><column-name>ruleId</column-name><column-value><![CDATA[");
1062                    sb.append(getRuleId());
1063                    sb.append("]]></column-value></column>");
1064                    sb.append(
1065                            "<column><column-name>groupId</column-name><column-value><![CDATA[");
1066                    sb.append(getGroupId());
1067                    sb.append("]]></column-value></column>");
1068                    sb.append(
1069                            "<column><column-name>companyId</column-name><column-value><![CDATA[");
1070                    sb.append(getCompanyId());
1071                    sb.append("]]></column-value></column>");
1072                    sb.append(
1073                            "<column><column-name>userId</column-name><column-value><![CDATA[");
1074                    sb.append(getUserId());
1075                    sb.append("]]></column-value></column>");
1076                    sb.append(
1077                            "<column><column-name>userName</column-name><column-value><![CDATA[");
1078                    sb.append(getUserName());
1079                    sb.append("]]></column-value></column>");
1080                    sb.append(
1081                            "<column><column-name>createDate</column-name><column-value><![CDATA[");
1082                    sb.append(getCreateDate());
1083                    sb.append("]]></column-value></column>");
1084                    sb.append(
1085                            "<column><column-name>modifiedDate</column-name><column-value><![CDATA[");
1086                    sb.append(getModifiedDate());
1087                    sb.append("]]></column-value></column>");
1088                    sb.append(
1089                            "<column><column-name>ruleGroupId</column-name><column-value><![CDATA[");
1090                    sb.append(getRuleGroupId());
1091                    sb.append("]]></column-value></column>");
1092                    sb.append(
1093                            "<column><column-name>name</column-name><column-value><![CDATA[");
1094                    sb.append(getName());
1095                    sb.append("]]></column-value></column>");
1096                    sb.append(
1097                            "<column><column-name>description</column-name><column-value><![CDATA[");
1098                    sb.append(getDescription());
1099                    sb.append("]]></column-value></column>");
1100                    sb.append(
1101                            "<column><column-name>type</column-name><column-value><![CDATA[");
1102                    sb.append(getType());
1103                    sb.append("]]></column-value></column>");
1104                    sb.append(
1105                            "<column><column-name>typeSettings</column-name><column-value><![CDATA[");
1106                    sb.append(getTypeSettings());
1107                    sb.append("]]></column-value></column>");
1108    
1109                    sb.append("</model>");
1110    
1111                    return sb.toString();
1112            }
1113    
1114            private static final ClassLoader _classLoader = MDRRule.class.getClassLoader();
1115            private static final Class<?>[] _escapedModelInterfaces = new Class[] {
1116                            MDRRule.class
1117                    };
1118            private String _uuid;
1119            private String _originalUuid;
1120            private long _ruleId;
1121            private long _groupId;
1122            private long _originalGroupId;
1123            private boolean _setOriginalGroupId;
1124            private long _companyId;
1125            private long _originalCompanyId;
1126            private boolean _setOriginalCompanyId;
1127            private long _userId;
1128            private String _userName;
1129            private Date _createDate;
1130            private Date _modifiedDate;
1131            private boolean _setModifiedDate;
1132            private long _ruleGroupId;
1133            private long _originalRuleGroupId;
1134            private boolean _setOriginalRuleGroupId;
1135            private String _name;
1136            private String _nameCurrentLanguageId;
1137            private String _description;
1138            private String _descriptionCurrentLanguageId;
1139            private String _type;
1140            private String _typeSettings;
1141            private long _columnBitmask;
1142            private MDRRule _escapedModel;
1143    }