Coverage Report - org.galagosearch.tupleflow.execution.StepSpecification
 
Classes in this File Line Coverage Branch Coverage Complexity
StepSpecification
N/A
N/A
1
 
 1  
 // BSD License (http://www.galagosearch.org/license)
 2  
 
 3  
 package org.galagosearch.tupleflow.execution;
 4  
 
 5  
 import org.galagosearch.tupleflow.Order;
 6  
 import org.galagosearch.tupleflow.Parameters;
 7  
 
 8  
 /**
 9  
  * There are a few different things this interface needs to support.
 10  
  * 
 11  
  * <ul>
 12  
  * <li>Validation</li>
 13  
  * <li>Code completion</li>
 14  
  * </ul>
 15  
  * 
 16  
  * @author trevor
 17  
  */
 18  
 
 19  
 /*
 20  
 public interface TagSpecification {
 21  
     public String getName();
 22  
     public String getDocumentation();
 23  
     
 24  
     public boolean acceptsChildren();
 25  
     public boolean valueRequired();
 26  
     
 27  
     public List<TagSpecification> getChildren();
 28  
 }
 29  
 
 30  
 public interface ValueTagSpecification {
 31  
     public String getName();
 32  
     public String getDocumentation();
 33  
     
 34  
     public List<String> getCompletions();
 35  
     public boolean validate(String value, ErrorHandler handler);
 36  
 }
 37  
 
 38  
 public interface StructureTagSpecification {
 39  
     public String getName();
 40  
     public String getDocumentation();
 41  
     
 42  
     public List<TagSpecification> getChildren();
 43  
     public boolean validate(Parameters parameters, ErrorHandler handler);
 44  
 }
 45  
 
 46  
 public interface ParametersSpecification {
 47  
     // what top-level tags are supported? in what combinations?
 48  
     // rule: parent tag determines what child tags are supported.  
 49  
     // value of one child tag does not influence what other tags are valid,
 50  
     //      although it may influence value validation.
 51  
     public List<TagSpecification> getChildren();
 52  
     public boolean validate(Parameters parameters, ErrorHandler handler);
 53  
 }
 54  
 */
 55  
 
 56  
 public interface StepSpecification {
 57  
     public void setParameters(Parameters parameters);
 58  
     public void addErrors(ErrorHandler handler);
 59  
     
 60  
     public String getDocumentation();
 61  
 
 62  
     public Class getInput(String name);
 63  
     public Class getOutput(String name);
 64  
     public Order getInputOrder(String name);
 65  
     public Order getOutputOrder(String name);
 66  
     
 67  
     public boolean acceptsParameters();
 68  
     
 69  
     public Class getInputClass();
 70  
     public Class getOutputClass();
 71  
    
 72  
     public Order getInputOrder();
 73  
     public Order getOutputOrder();
 74  
 }