Coverage Report - com.sun.javafx.runtime.sequence.BoundUpcastSequence
 
Classes in this File Line Coverage Branch Coverage Complexity
BoundUpcastSequence
0%
0/8
N/A
0
BoundUpcastSequence$1
0%
0/3
N/A
0
 
 1  
 package com.sun.javafx.runtime.sequence;
 2  
 
 3  
 import com.sun.javafx.runtime.location.SequenceChangeListener;
 4  
 import com.sun.javafx.runtime.location.SequenceLocation;
 5  
 
 6  
 /**
 7  
  * BoundUpcastSequence
 8  
  *
 9  
  * @author Brian Goetz
 10  
  */
 11  
 public class BoundUpcastSequence<T, V extends T> extends AbstractBoundSequence<T> {
 12  
 
 13  
     private final SequenceLocation<V> sequence;
 14  
 
 15  
     public BoundUpcastSequence(Class<T> clazz, SequenceLocation<V> sequence) {
 16  0
         super(clazz);
 17  0
         this.sequence = sequence;
 18  0
         setInitialValue(computeValue());
 19  0
         addTriggers();
 20  0
     }
 21  
 
 22  
     private Sequence<T> computeValue() {
 23  0
         return Sequences.upcast(getClazz(), sequence.get());
 24  
     }
 25  
 
 26  
     private void addTriggers() {
 27  0
         sequence.addChangeListener(new SequenceChangeListener<V>() {
 28  
             public void onChange(int startPos, int endPos, Sequence<? extends V> newElements, Sequence<V> oldValue, Sequence<V> newValue) {
 29  0
                 updateSlice(startPos, endPos, newElements, Sequences.upcast(getClazz(), newValue));
 30  0
             }
 31  
         });
 32  0
     }
 33  
 }