001
014
015 package com.liferay.portlet.journal.model.impl;
016
017 import aQute.bnd.annotation.ProviderType;
018
019 import com.liferay.portal.kernel.exception.PortalException;
020 import com.liferay.portal.kernel.util.StringBundler;
021 import com.liferay.portal.kernel.util.StringPool;
022
023 import com.liferay.portlet.journal.model.JournalFolder;
024 import com.liferay.portlet.journal.service.JournalFolderLocalServiceUtil;
025
026 import java.util.ArrayList;
027 import java.util.List;
028
029
041 @ProviderType
042 public abstract class JournalFolderBaseImpl extends JournalFolderModelImpl
043 implements JournalFolder {
044
049 @Override
050 public void persist() {
051 if (this.isNew()) {
052 JournalFolderLocalServiceUtil.addJournalFolder(this);
053 }
054 else {
055 JournalFolderLocalServiceUtil.updateJournalFolder(this);
056 }
057 }
058
059 @Override
060 @SuppressWarnings("unused")
061 public String buildTreePath() throws PortalException {
062 List<JournalFolder> journalFolders = new ArrayList<JournalFolder>();
063
064 JournalFolder journalFolder = this;
065
066 while (journalFolder != null) {
067 journalFolders.add(journalFolder);
068
069 journalFolder = JournalFolderLocalServiceUtil.fetchJournalFolder(journalFolder.getParentFolderId());
070 }
071
072 StringBundler sb = new StringBundler((journalFolders.size() * 2) + 1);
073
074 sb.append(StringPool.SLASH);
075
076 for (int i = journalFolders.size() - 1; i >= 0; i--) {
077 journalFolder = journalFolders.get(i);
078
079 sb.append(journalFolder.getFolderId());
080 sb.append(StringPool.SLASH);
081 }
082
083 return sb.toString();
084 }
085
086 @Override
087 public void updateTreePath(String treePath) {
088 JournalFolder journalFolder = this;
089
090 journalFolder.setTreePath(treePath);
091
092 JournalFolderLocalServiceUtil.updateJournalFolder(journalFolder);
093 }
094 }