X-Git-Url: https://git.hedgecode.org/?p=chesshog.git;a=blobdiff_plain;f=chesshog-format%2Fsrc%2Fmain%2Fjava%2Forg%2Fhedgecode%2Fchess%2Fpgn%2FPGNParser.java;h=4f67a2d407d2d3eb9005ed13ba08d9ba93409bf5;hp=274bfdf3ca5044a76f0725a6c4c409a031fd15df;hb=5d271f23371d6a435a0435f000370f4d9b8c621a;hpb=569af88b0115065e1a4551a20501bbd200fcba17 diff --git a/chesshog-format/src/main/java/org/hedgecode/chess/pgn/PGNParser.java b/chesshog-format/src/main/java/org/hedgecode/chess/pgn/PGNParser.java index 274bfdf..4f67a2d 100644 --- a/chesshog-format/src/main/java/org/hedgecode/chess/pgn/PGNParser.java +++ b/chesshog-format/src/main/java/org/hedgecode/chess/pgn/PGNParser.java @@ -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. @@ -16,13 +16,25 @@ 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; + } }