001    /**
002     * Copyright (c) 2000-present Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.asset.kernel.model;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.annotation.ImplementationClassName;
020    import com.liferay.portal.kernel.model.NestedSetsTreeNodeModel;
021    import com.liferay.portal.kernel.model.PersistedModel;
022    import com.liferay.portal.kernel.util.Accessor;
023    
024    /**
025     * The extended model interface for the AssetCategory service. Represents a row in the "AssetCategory" database table, with each column mapped to a property of this class.
026     *
027     * @author Brian Wing Shun Chan
028     * @see AssetCategoryModel
029     * @see com.liferay.portlet.asset.model.impl.AssetCategoryImpl
030     * @see com.liferay.portlet.asset.model.impl.AssetCategoryModelImpl
031     * @generated
032     */
033    @ImplementationClassName("com.liferay.portlet.asset.model.impl.AssetCategoryImpl")
034    @ProviderType
035    public interface AssetCategory extends AssetCategoryModel,
036            NestedSetsTreeNodeModel, PersistedModel {
037            /*
038             * NOTE FOR DEVELOPERS:
039             *
040             * Never modify this interface directly. Add methods to {@link com.liferay.portlet.asset.model.impl.AssetCategoryImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
041             */
042            public static final Accessor<AssetCategory, String> UUID_ACCESSOR = new Accessor<AssetCategory, String>() {
043                            @Override
044                            public String get(AssetCategory assetCategory) {
045                                    return assetCategory.getUuid();
046                            }
047    
048                            @Override
049                            public Class<String> getAttributeClass() {
050                                    return String.class;
051                            }
052    
053                            @Override
054                            public Class<AssetCategory> getTypeClass() {
055                                    return AssetCategory.class;
056                            }
057                    };
058    
059            public static final Accessor<AssetCategory, Long> CATEGORY_ID_ACCESSOR = new Accessor<AssetCategory, Long>() {
060                            @Override
061                            public Long get(AssetCategory assetCategory) {
062                                    return assetCategory.getCategoryId();
063                            }
064    
065                            @Override
066                            public Class<Long> getAttributeClass() {
067                                    return Long.class;
068                            }
069    
070                            @Override
071                            public Class<AssetCategory> getTypeClass() {
072                                    return AssetCategory.class;
073                            }
074                    };
075    
076            public static final Accessor<AssetCategory, String> NAME_ACCESSOR = new Accessor<AssetCategory, String>() {
077                            @Override
078                            public String get(AssetCategory assetCategory) {
079                                    return assetCategory.getName();
080                            }
081    
082                            @Override
083                            public Class<String> getAttributeClass() {
084                                    return String.class;
085                            }
086    
087                            @Override
088                            public Class<AssetCategory> getTypeClass() {
089                                    return AssetCategory.class;
090                            }
091                    };
092    
093            public java.util.List<com.liferay.asset.kernel.model.AssetCategory> getAncestors()
094                    throws com.liferay.portal.kernel.exception.PortalException;
095    
096            public com.liferay.asset.kernel.model.AssetCategory getParentCategory();
097    
098            public java.lang.String getPath(java.util.Locale locale)
099                    throws com.liferay.portal.kernel.exception.PortalException;
100    
101            public boolean isRootCategory();
102    }