001    /*
002     * Created on Mar 18, 2005
003     *
004     * Copyright 2004 Chris Nelson
005     * 
006     * Licensed under the Apache License, Version 2.0 (the "License"); 
007     * you may not use this file except in compliance with the License. 
008     * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 
009     * Unless required by applicable law or agreed to in writing, 
010     * software distributed under the License is distributed on an "AS IS" BASIS, 
011     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
012     * See the License for the specific language governing permissions and limitations under the License.
013     */
014    package org.trails.descriptor;
015    
016    import java.util.List;
017    
018    /**
019     * @author fus8882
020     *         <p/>
021     *         TODO To change the template for this generated type comment go to
022     *         Window - Preferences - Java - Code Style - Code Templates
023     */
024    public interface IClassDescriptor extends IDescriptor
025    {
026            public Class getType();
027    
028            /**
029             * @return Returns the methodDescriptors.
030             */
031            public List<IMethodDescriptor> getMethodDescriptors();
032    
033            /**
034             * @param methodDescriptors The methodDescriptors to set.
035             */
036            public void setMethodDescriptors(List<IMethodDescriptor> methodDescriptors);
037    
038            /**
039             * @return Returns the propertyDescriptors.
040             */
041            public List<IPropertyDescriptor> getPropertyDescriptors();
042    
043            /**
044             * @param propertyDescriptors The propertyDescriptors to set.
045             */
046            public void setPropertyDescriptors(List<IPropertyDescriptor> propertyDescriptors);
047    
048            public IPropertyDescriptor getIdentifierDescriptor();
049    
050            /**
051             * @return
052             */
053            public String getDisplayName();
054    
055            public void setDisplayName(String displayName);
056    
057            /**
058             * @return
059             */
060            public String getShortDescription();
061    
062            public void setShortDescription(String shortDescription);
063    
064            /**
065             * @param string
066             * @return
067             */
068            public IPropertyDescriptor getPropertyDescriptor(String name);
069    
070            /**
071             * @return
072             */
073            public String getPluralDisplayName();
074    
075            /**
076             * @return
077             */
078            public boolean isChild();
079    
080            /**
081             * @param
082             */
083            public void setChild(boolean child);
084    
085            public List<IPropertyDescriptor> getPropertyDescriptors(List<String> propertyNames);
086    
087            public boolean isAllowSave();
088    
089            public void setAllowSave(boolean allowSave);
090    
091            public boolean isAllowRemove();
092    
093            public void setAllowRemove(boolean allowRemove);
094    
095            public boolean getHasCyclicRelationships();
096    
097            public void setHasCyclicRelationships(boolean hasBidirectionalRelationship);
098    
099    }