1 25 package classycle.dependency; 26 27 import classycle.graph.AtomicVertex; 28 import classycle.util.StringPattern; 29 30 33 public class DependencyResult implements Result 34 { 35 static final String OK = "\tOK"; 36 static final String DEPENDENCY_FOUND = "\n Dependency found:"; 37 private final StringPattern _startSet; 38 private final StringPattern _finalSet; 39 private final String _statement; 40 private final AtomicVertex[] _paths; 41 private final boolean _ok; 42 43 public DependencyResult(StringPattern startSet, StringPattern finalSet, 44 String statement, AtomicVertex[] paths) 45 { 46 _startSet = startSet; 47 _finalSet = finalSet; 48 _statement = statement; 49 _paths = paths; 50 _ok = paths.length == 0; 51 } 52 53 public boolean isOk() 54 { 55 return _ok; 56 } 57 58 public StringPattern getFinalSet() 59 { 60 return _finalSet; 61 } 62 63 public AtomicVertex[] getPaths() 64 { 65 return _paths; 66 } 67 68 public StringPattern getStartSet() 69 { 70 return _startSet; 71 } 72 73 public String toString() 74 { 75 StringBuffer buffer = new StringBuffer (_statement); 76 if (_ok) 77 { 78 buffer.append(OK); 79 } else 80 { 81 DependencyPathsRenderer renderer 82 = new DependencyPathsRenderer(_paths, 83 new PatternVertexCondition(_startSet), 84 new PatternVertexCondition(_finalSet)); 85 buffer.append(DEPENDENCY_FOUND).append(renderer.renderGraph(" ")); 86 } 87 return new String (buffer.append('\n')); 88 } 89 } 90 | Popular Tags |