001
014
015 package com.liferay.portlet.dynamicdatalists.model.impl;
016
017 import com.liferay.portal.kernel.exception.PortalException;
018 import com.liferay.portlet.dynamicdatalists.model.DDLRecordSet;
019 import com.liferay.portlet.dynamicdatalists.model.DDLRecordVersion;
020 import com.liferay.portlet.dynamicdatalists.service.DDLRecordLocalServiceUtil;
021 import com.liferay.portlet.dynamicdatalists.service.DDLRecordSetLocalServiceUtil;
022 import com.liferay.portlet.dynamicdatalists.service.DDLRecordVersionLocalServiceUtil;
023 import com.liferay.portlet.dynamicdatamapping.model.DDMStructure;
024 import com.liferay.portlet.dynamicdatamapping.storage.Field;
025 import com.liferay.portlet.dynamicdatamapping.storage.Fields;
026 import com.liferay.portlet.dynamicdatamapping.storage.StorageEngineUtil;
027
028 import java.io.Serializable;
029
030 import java.util.List;
031 import java.util.Locale;
032
033
037 public class DDLRecordImpl extends DDLRecordBaseImpl {
038
039 public DDLRecordImpl() {
040 }
041
042 @Override
043 public Field getField(String fieldName) throws PortalException {
044 Fields fields = getFields();
045
046 return fields.get(fieldName);
047 }
048
049 @Override
050 public Serializable getFieldDataType(String fieldName)
051 throws PortalException {
052
053 DDLRecordSet recordSet = getRecordSet();
054
055 DDMStructure ddmStructure = recordSet.getDDMStructure();
056
057 return ddmStructure.getFieldDataType(fieldName);
058 }
059
060 @Override
061 public Fields getFields() throws PortalException {
062 return StorageEngineUtil.getFields(getDDMStorageId());
063 }
064
065 @Override
066 public Serializable getFieldType(String fieldName) throws Exception {
067 DDLRecordSet recordSet = getRecordSet();
068
069 DDMStructure ddmStructure = recordSet.getDDMStructure();
070
071 return ddmStructure.getFieldType(fieldName);
072 }
073
074 @Override
075 public Serializable getFieldValue(String fieldName) throws PortalException {
076 Field field = getField(fieldName);
077
078 if (field == null) {
079 return null;
080 }
081
082 return field.getValue();
083 }
084
085 @Override
086 public Serializable getFieldValue(String fieldName, Locale locale)
087 throws PortalException {
088
089 Field field = getField(fieldName);
090
091 if (field == null) {
092 return null;
093 }
094
095 return field.getValue(locale);
096 }
097
098 @Override
099 public List<Serializable> getFieldValues(String fieldName, Locale locale)
100 throws PortalException {
101
102 Field field = getField(fieldName);
103
104 if (field == null) {
105 return null;
106 }
107
108 return field.getValues(locale);
109 }
110
111 @Override
112 public DDLRecordVersion getLatestRecordVersion() throws PortalException {
113 return DDLRecordLocalServiceUtil.getLatestRecordVersion(getRecordId());
114 }
115
116 @Override
117 public DDLRecordSet getRecordSet() throws PortalException {
118 return DDLRecordSetLocalServiceUtil.getRecordSet(getRecordSetId());
119 }
120
121 @Override
122 public DDLRecordVersion getRecordVersion() throws PortalException {
123 return getRecordVersion(getVersion());
124 }
125
126 @Override
127 public DDLRecordVersion getRecordVersion(String version)
128 throws PortalException {
129
130 return DDLRecordVersionLocalServiceUtil.getRecordVersion(
131 getRecordId(), version);
132 }
133
134 @Override
135 public int getStatus() throws PortalException {
136 DDLRecordVersion recordVersion = getRecordVersion();
137
138 return recordVersion.getStatus();
139 }
140
141 }