001
014
015 package com.liferay.portlet.asset.model.impl;
016
017 import com.liferay.portal.kernel.util.ArrayUtil;
018 import com.liferay.portal.kernel.util.GetterUtil;
019 import com.liferay.portal.kernel.util.StringUtil;
020 import com.liferay.portal.kernel.util.UnicodeProperties;
021 import com.liferay.portal.kernel.util.Validator;
022
023
027 public class AssetVocabularyImpl extends AssetVocabularyBaseImpl {
028
029 public AssetVocabularyImpl() {
030 }
031
032 @Override
033 public String getSettings() {
034 if (_settingsProperties == null) {
035 return super.getSettings();
036 }
037 else {
038 return _settingsProperties.toString();
039 }
040 }
041
042 @Override
043 public UnicodeProperties getSettingsProperties() {
044 if (_settingsProperties == null) {
045 _settingsProperties = new UnicodeProperties(true);
046
047 _settingsProperties.fastLoad(super.getSettings());
048 }
049
050 return _settingsProperties;
051 }
052
053 @Override
054 public String getTitle(String languageId) {
055 String value = super.getTitle(languageId);
056
057 if (Validator.isNull(value)) {
058 value = getName();
059 }
060
061 return value;
062 }
063
064 @Override
065 public String getTitle(String languageId, boolean useDefault) {
066 String value = super.getTitle(languageId, useDefault);
067
068 if (Validator.isNull(value)) {
069 value = getName();
070 }
071
072 return value;
073 }
074
075 @Override
076 public boolean isMultiValued() {
077 if (Validator.isNull(_settingsProperties)) {
078 _settingsProperties = getSettingsProperties();
079 }
080
081 return GetterUtil.getBoolean(
082 _settingsProperties.getProperty("multiValued"), true);
083 }
084
085 @Override
086 public boolean isRequired(long classNameId) {
087 if (Validator.isNull(_settingsProperties)) {
088 _settingsProperties = getSettingsProperties();
089 }
090
091 long[] requiredClassNameIds = StringUtil.split(
092 _settingsProperties.getProperty("requiredClassNameIds"), 0L);
093
094 return ArrayUtil.contains(requiredClassNameIds, classNameId);
095 }
096
097 @Override
098 public void setSettings(String settings) {
099 _settingsProperties = null;
100
101 super.setSettings(settings);
102 }
103
104 @Override
105 public void setSettingsProperties(UnicodeProperties settingsProperties) {
106 _settingsProperties = settingsProperties;
107
108 super.setSettings(settingsProperties.toString());
109 }
110
111 private UnicodeProperties _settingsProperties;
112
113 }