Coverage Report - org.trails.component.search.SimpleSearchField
 
Classes in this File Line Coverage Branch Coverage Complexity
SimpleSearchField
50% 
50% 
0
 
 1  
 package org.trails.component.search;
 2  
 
 3  
 import org.apache.tapestry.BaseComponent;
 4  
 import org.apache.tapestry.IMarkupWriter;
 5  
 import org.apache.tapestry.IRequestCycle;
 6  
 import org.apache.tapestry.annotations.InjectObject;
 7  
 import org.apache.tapestry.annotations.Parameter;
 8  
 import org.hibernate.criterion.DetachedCriteria;
 9  
 import org.hibernate.criterion.Restrictions;
 10  
 import org.trails.descriptor.IPropertyDescriptor;
 11  
 import org.trails.validation.ValidatorTranslatorService;
 12  
 
 13  7
 public abstract class SimpleSearchField extends BaseComponent
 14  
 {
 15  
         public abstract Object getValue();
 16  
 
 17  
         public abstract void setValue(Object Value);
 18  
 
 19  
         @Parameter(required = false, defaultValue = "page.criteria")
 20  
         public abstract DetachedCriteria getCriteria();
 21  
 
 22  
         public abstract void setCriteria(DetachedCriteria Criteria);
 23  
 
 24  
         @Parameter(required = true)
 25  
         public abstract IPropertyDescriptor getPropertyDescriptor();
 26  
 
 27  
         public abstract void setPropertyDescriptor(IPropertyDescriptor PropertyDescriptor);
 28  
 
 29  
         @InjectObject("spring:validatorTranslatorService")
 30  
         public abstract ValidatorTranslatorService getValidatorTranslatorService();
 31  
 
 32  
         public void buildCriterion()
 33  
         {
 34  2
                 if (getValue() != null)
 35  
                 {
 36  1
                         getCriteria().add(Restrictions.eq(getPropertyDescriptor().getName(), getValue()));
 37  
                 }
 38  2
         }
 39  
 
 40  
         @Override
 41  
         protected void renderComponent(IMarkupWriter writer, IRequestCycle cycle)
 42  
         {
 43  
                 // TODO Auto-generated method stub
 44  0
                 super.renderComponent(writer, cycle);
 45  0
                 if (cycle.isRewinding())
 46  
                 {
 47  0
                         buildCriterion();
 48  
                 }
 49  0
         }
 50  
 
 51  
 
 52  
 }