1 33 package net.sf.jga.fn.property; 34 35 import net.sf.jga.fn.UnaryPredicate; 36 37 53 54 public class InstanceOf<T> extends UnaryPredicate<T> { 55 56 static final long serialVersionUID = -1792964506358538850L; 57 58 private Class <?> _class; 59 60 64 public InstanceOf(Class <?> cl) { 65 if (cl == null) 66 throw new IllegalArgumentException ("A class must be given"); 67 68 _class = cl; 69 } 70 71 72 public Class <?> getTestClass() { return _class; } 73 74 76 public Boolean fn(T arg) { 77 return _class.isInstance(arg); 78 } 79 80 84 public void accept(net.sf.jga.fn.Visitor v) { 85 if (v instanceof InstanceOf.Visitor) 86 ((InstanceOf.Visitor)v).visit(this); 87 else 88 v.visit(this); 89 } 90 91 93 public String toString() { 94 return "InstanceOf["+_class.getName()+"]"; 95 } 96 97 99 103 public interface Visitor extends net.sf.jga.fn.Visitor { 104 public void visit(InstanceOf host); 105 } 106 } 107 | Popular Tags |