001    package org.maltparser.parser.algorithm.planar;
002    
003    import org.maltparser.core.exception.MaltChainedException;
004    
005    import org.maltparser.parser.Algorithm;
006    import org.maltparser.parser.TransitionSystem;
007    import org.maltparser.parser.guide.OracleGuide;
008    import org.maltparser.parser.history.GuideUserHistory;
009    /**
010     * @author Carlos Gomez Rodriguez
011     *
012     */
013    public class NivrePlanarArcEagerFactory extends PlanarFactory {
014            public NivrePlanarArcEagerFactory(Algorithm algorithm) {
015                    super(algorithm);
016            }
017            
018            public TransitionSystem makeTransitionSystem() throws MaltChainedException {
019                    if (manager.getConfigLogger().isInfoEnabled()) {
020                            manager.getConfigLogger().info("  Transition system    : Planar Arc-Eager\n");
021                    }
022                    TransitionSystem ts = new Planar();
023                    ts.setPropagationManager(manager.getPropagationManager());
024                    return ts;
025            }
026            
027            public OracleGuide makeOracleGuide(GuideUserHistory history) throws MaltChainedException {
028                    if (manager.getConfigLogger().isInfoEnabled()) {
029                            manager.getConfigLogger().info("  Oracle               : Planar Arc-Eager\n");
030                    }
031                    return new PlanarArcEagerOracle(manager, history);
032            }
033    }