Coverage Report - org.trails.io.PropertyChangeAdaptor
 
Classes in this File Line Coverage Branch Coverage Complexity
PropertyChangeAdaptor
0% 
N/A 
1
 
 1  
 package org.trails.io;
 2  
 
 3  
 import org.apache.tapestry.record.PropertyChange;
 4  
 import org.apache.tapestry.record.PropertyChangeImpl;
 5  
 import org.apache.tapestry.services.DataSqueezer;
 6  
 import org.apache.tapestry.util.io.SqueezeAdaptor;
 7  
 
 8  
 
 9  
 /**
 10  
  * Squeezes a {@link PropertyChangeAdaptor}
 11  
  */
 12  0
 public class PropertyChangeAdaptor implements SqueezeAdaptor
 13  
 {
 14  
         public static final String DELIMITER = "trails:";
 15  
         public static final String PREFIX = "X";
 16  
 
 17  
         public String getPrefix()
 18  
         {
 19  0
                 return PREFIX;
 20  
         }
 21  
 
 22  
         public Class getDataClass()
 23  
         {
 24  0
                 return PropertyChange.class;
 25  
         }
 26  
 
 27  
         public String squeeze(DataSqueezer next, Object o)
 28  
         {
 29  0
                 PropertyChange propertyChange = (PropertyChange) o;
 30  0
                 return PREFIX + next.squeeze(propertyChange.getComponentPath()) + DELIMITER +
 31  0
                         next.squeeze(propertyChange.getPropertyName() + DELIMITER + next.squeeze(propertyChange.getNewValue()));
 32  
 
 33  
         }
 34  
 
 35  
         public Object unsqueeze(DataSqueezer next, String string)
 36  
         {
 37  0
                 String[] squeezeds = string.substring(PREFIX.length()).split(DELIMITER);
 38  0
                 return new PropertyChangeImpl((String) next.unsqueeze(squeezeds[0]), (String) next.unsqueeze(squeezeds[1]),
 39  0
                         next.unsqueeze(squeezeds[2]));
 40  
         }
 41  
 }