001    package org.tynamo.descriptor.annotation.handlers;
002    
003    import org.tynamo.descriptor.TynamoPropertyDescriptor;
004    import org.tynamo.descriptor.annotation.BlobDescriptor;
005    import org.tynamo.descriptor.extension.BeanModelExtension;
006    import org.tynamo.descriptor.extension.BlobDescriptorExtension;
007    
008    public class BlobDescriptorAnnotationHandler extends AbstractAnnotationHandler implements DescriptorAnnotationHandler<BlobDescriptor, TynamoPropertyDescriptor>
009    {
010    
011            public BlobDescriptorAnnotationHandler()
012            {
013                    super();
014            }
015    
016            public TynamoPropertyDescriptor decorateFromAnnotation(BlobDescriptor propertyDescriptorAnno,
017                                                                   TynamoPropertyDescriptor descriptor)
018            {
019                    BlobDescriptorExtension blobDescriptor = new BlobDescriptorExtension(descriptor.getPropertyType());
020                    setPropertiesFromAnnotation(propertyDescriptorAnno, blobDescriptor);
021                    descriptor.addExtension(BlobDescriptorExtension.class, blobDescriptor);
022    
023                    BeanModelExtension beanModelExtension = BeanModelExtension.obtainBeanModelExtension(descriptor);
024    
025                    beanModelExtension.addToExcludeMap("list", descriptor.getName());
026                    return descriptor;
027            }
028    
029    
030    }