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.tynamo.descriptor;
015
016 import java.util.List;
017
018 public interface TynamoClassDescriptor extends Descriptor
019 {
020 public Class getType();
021
022 /**
023 * @return Returns the methodDescriptors.
024 */
025 public List<IMethodDescriptor> getMethodDescriptors();
026
027 /**
028 * @param methodDescriptors The methodDescriptors to set.
029 */
030 public void setMethodDescriptors(List<IMethodDescriptor> methodDescriptors);
031
032 /**
033 * @return Returns the propertyDescriptors.
034 */
035 public List<TynamoPropertyDescriptor> getPropertyDescriptors();
036
037 /**
038 * @param propertyDescriptors The propertyDescriptors to set.
039 */
040 public void setPropertyDescriptors(List<TynamoPropertyDescriptor> propertyDescriptors);
041
042 public TynamoPropertyDescriptor getIdentifierDescriptor();
043
044 /**
045 * @param string
046 * @return
047 */
048 public TynamoPropertyDescriptor getPropertyDescriptor(String name);
049
050 /**
051 * @return
052 */
053 public boolean isChild();
054
055 /**
056 * @param
057 */
058 public void setChild(boolean child);
059
060 public List<TynamoPropertyDescriptor> getPropertyDescriptors(List<String> propertyNames);
061
062 public boolean isAllowSave();
063
064 public void setAllowSave(boolean allowSave);
065
066 public boolean isAllowRemove();
067
068 public void setAllowRemove(boolean allowRemove);
069
070 public boolean getHasCyclicRelationships();
071
072 public void setHasCyclicRelationships(boolean hasBidirectionalRelationship);
073
074 }