Add interfaces for content parser.
[arachne.git] / src / net / pterodactylus / arachne / parser / Parser.java
diff --git a/src/net/pterodactylus/arachne/parser/Parser.java b/src/net/pterodactylus/arachne/parser/Parser.java
new file mode 100644 (file)
index 0000000..28d8706
--- /dev/null
@@ -0,0 +1,27 @@
+/*
+ * © 2009 David ‘Bombe’ Roden
+ */
+package net.pterodactylus.arachne.parser;
+
+import java.io.InputStream;
+
+/**
+ * Interface for a parser. A parser understands the format it should parse and
+ * can generate events based on the parsed content.
+ *
+ * @see ParserListener
+ * @author David ‘Bombe’ Roden <bombe@pterodactylus.net>
+ */
+public interface Parser {
+
+       /**
+        * Parses the given input stream and sends events to the given listener.
+        *
+        * @param parserListener
+        *            The listener to send events to
+        * @param inputStream
+        *            The input stream to parse
+        */
+       public void parse(ParserListener parserListener, InputStream inputStream);
+
+}