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.DDLRecord;
019 import com.liferay.portlet.dynamicdatalists.service.DDLRecordLocalServiceUtil;
020 import com.liferay.portlet.dynamicdatamapping.NoSuchTemplateException;
021 import com.liferay.portlet.dynamicdatamapping.model.DDMStructure;
022 import com.liferay.portlet.dynamicdatamapping.model.DDMTemplate;
023 import com.liferay.portlet.dynamicdatamapping.service.DDMStructureLocalServiceUtil;
024 import com.liferay.portlet.dynamicdatamapping.service.DDMTemplateLocalServiceUtil;
025 import com.liferay.portlet.dynamicdatamapping.storage.Fields;
026
027 import java.util.ArrayList;
028 import java.util.List;
029
030
033 public class DDLRecordSetImpl extends DDLRecordSetBaseImpl {
034
035 public DDLRecordSetImpl() {
036 }
037
038 @Override
039 public DDMStructure getDDMStructure() throws PortalException {
040 return DDMStructureLocalServiceUtil.getStructure(getDDMStructureId());
041 }
042
043 @Override
044 public DDMStructure getDDMStructure(long formDDMTemplateId)
045 throws PortalException {
046
047 DDMStructure ddmStructure = getDDMStructure();
048
049 if (formDDMTemplateId > 0) {
050 try {
051 DDMTemplate ddmTemplate =
052 DDMTemplateLocalServiceUtil.getTemplate(formDDMTemplateId);
053
054
055
056 ddmStructure = (DDMStructure)ddmStructure.clone();
057
058 ddmStructure.setDefinition(ddmTemplate.getScript());
059 }
060 catch (NoSuchTemplateException nste) {
061 }
062 }
063
064 return ddmStructure;
065 }
066
067 @Override
068 public List<DDLRecord> getRecords() {
069 return DDLRecordLocalServiceUtil.getRecords(getRecordSetId());
070 }
071
072 @Override
073 public List<Fields> getRecordsFieldsList() throws PortalException {
074 List<Fields> fieldsList = new ArrayList<Fields>();
075
076 for (DDLRecord record : getRecords()) {
077 fieldsList.add(record.getFields());
078 }
079
080 return fieldsList;
081 }
082
083 }