001
014
015 package com.liferay.portlet.messageboards.model.impl;
016
017 import com.liferay.portal.kernel.exception.PortalException;
018 import com.liferay.portal.kernel.exception.SystemException;
019 import com.liferay.portlet.messageboards.model.MBCategory;
020 import com.liferay.portlet.messageboards.service.MBCategoryLocalServiceUtil;
021 import com.liferay.portlet.messageboards.util.MBUtil;
022
023 import java.util.ArrayList;
024 import java.util.List;
025
026
029 public class MBCategoryImpl extends MBCategoryModelImpl implements MBCategory {
030
031 public MBCategoryImpl() {
032 }
033
034 public List<Long> getAncestorCategoryIds()
035 throws PortalException, SystemException {
036
037 List<Long> ancestorCategoryIds = new ArrayList<Long>();
038
039 MBCategory category = this;
040
041 while (true) {
042 if (!category.isRoot()) {
043 category = MBCategoryLocalServiceUtil.getCategory(
044 category.getParentCategoryId());
045
046 ancestorCategoryIds.add(category.getCategoryId());
047 }
048 else {
049 break;
050 }
051 }
052
053 return ancestorCategoryIds;
054 }
055
056 public List<MBCategory> getAncestors()
057 throws PortalException, SystemException {
058
059 List<MBCategory> ancestors = new ArrayList<MBCategory>();
060
061 MBCategory category = this;
062
063 while (true) {
064 if (!category.isRoot()) {
065 category = MBCategoryLocalServiceUtil.getCategory(
066 category.getParentCategoryId());
067
068 ancestors.add(category);
069 }
070 else {
071 break;
072 }
073 }
074
075 return ancestors;
076 }
077
078 public boolean isRoot() {
079 if (MBUtil.isDefaultParentCategoryId(getParentCategoryId())) {
080 return true;
081 }
082 else {
083 return false;
084 }
085 }
086
087 }