* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- */
+ */
package org.wamblee.crawler.kiss;
import org.wamblee.conditions.Condition;
/**
- *
+ * Visitor which determines the interesting programs in the TV guide.
*/
public class MatchVisitor extends AbstractVisitor {
-
- private Condition _matcher;
+
+ /**
+ * Criterion that determines which programs are interesting.
+ */
+ private Condition<Program> _matcher;
+
+ /**
+ * List of interesting programs.
+ */
private List<Program> _programs;
-
- public MatchVisitor(Condition aMatcher) {
- _matcher = aMatcher;
+
+ /**
+ * Constructs the visitor.
+ * @param aMatcher Condition describing interesting programs.
+ */
+ public MatchVisitor(Condition<Program> aMatcher) {
+ _matcher = aMatcher;
_programs = new ArrayList<Program>();
}
-
- /* (non-Javadoc)
+
+ /*
+ * (non-Javadoc)
+ *
* @see org.wamblee.crawler.kiss.Visitor#visitProgram(org.wamblee.crawler.kiss.Program)
*/
public void visitProgram(Program aProgram) {
- if ( _matcher.matches(aProgram)) {
+ if (_matcher.matches(aProgram)) {
_programs.add(aProgram);
}
}
-
- public List<Program> getMatches() {
- return _programs;
+
+ /**
+ * Gets the list of interesting programs. To be called after applying
+ * the visitor on a tv guide.
+ * @return List of interesting programs.
+ */
+ public List<Program> getMatches() {
+ return _programs;
}
-
}