1 package prefuse.visual.expression; 2 3 import java.util.logging.Logger ; 4 5 import prefuse.data.Tuple; 6 import prefuse.data.expression.AbstractExpression; 7 import prefuse.data.expression.Expression; 8 import prefuse.data.expression.Function; 9 import prefuse.data.expression.ObjectLiteral; 10 11 19 public abstract class GroupExpression extends AbstractExpression 20 implements Function 21 { 22 private static final Logger s_logger 23 = Logger.getLogger(GroupExpression.class.getName()); 24 25 protected Expression m_group; 26 27 30 protected GroupExpression() { 31 m_group = null; 32 } 33 34 38 protected GroupExpression(String group) { 39 m_group = new ObjectLiteral(group); 40 } 41 42 47 protected String getGroup(Tuple t) { 48 String group = (String )m_group.get(t); 49 if ( group == null ) { 50 s_logger.warning("Null group lookup"); 51 } 52 return group; 53 } 54 55 56 60 public void addParameter(Expression e) { 61 if ( m_group == null ) 62 m_group = e; 63 else 64 throw new IllegalStateException ( 65 "This function takes only 1 parameter."); 66 } 67 68 71 public int getParameterCount() { 72 return 1; 73 } 74 75 78 public String toString() { 79 return getName()+"("+m_group+")"; 80 } 81 82 } | Popular Tags |