1
package org.dbdoclet.xiphias.dom;
3
import java.util.ArrayList;
5
import org.dbdoclet.progress.ProgressEvent;
6
import org.dbdoclet.progress.ProgressListener;
7
import org.dbdoclet.progress.ProgressManager;
8
import org.w3c.dom.Node;
10
public abstract class AbstractNodeVisitor implements INodeVisitor {
12
protected final ArrayList<ProgressListener> listeners;
13
private ProgressManager pm;
15
public AbstractNodeVisitor() {
16
this.listeners = new ArrayList<ProgressListener>();
17
pm = new ProgressManager(listeners);
20
public AbstractNodeVisitor(ArrayList<ProgressListener> listeners) {
21
this.listeners = listeners;
22
pm = new ProgressManager(listeners);
25
protected void fireProgressEvent(String msg, int stage) {
27
ProgressEvent event = new ProgressEvent(msg);
28
event.setStage(stage);
29
pm.fireProgressEvent(event);
32
public abstract void accept(Node node) throws Exception;
34
protected void removeNodes(ArrayList<Node> nodeList) {
36
for (Node node : nodeList) {
38
Node parent = node.getParentNode();
41
parent.removeChild(node);
b'\\ No newline at end of file'