[LIB-9] Set of entities for PGN parsing and formatting
[chesshog.git] / chesshog-format / src / main / java / org / hedgecode / chess / pgn / PGNParser.java
index 274bfdf..4f67a2d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2018. Developed by Hedgecode.
+ * Copyright (c) 2018-2020. Developed by Hedgecode.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 
 package org.hedgecode.chess.pgn;
 
+import org.hedgecode.chess.pgn.entity.Game;
+import org.hedgecode.chess.pgn.token.Tokenizer;
+import org.hedgecode.chess.pgn.entity.DetailGame;
+import org.hedgecode.chess.position.ParseException;
+
 /**
- *
+ * PGNParser
  *
  * @author Dmitry Samoshin aka gotty
  */
 public class PGNParser {
 
-
+    public static Game parse(String pgn) throws ParseException {
+        Game game = new DetailGame();
+        Tokenizer pgnTokenizer = new Tokenizer(pgn);
+        while (pgnTokenizer.hasToken()) {
+            pgnTokenizer.token(game);
+        }
+        return game;
+    }
 
 }