Skip to contentMethod: handle(RowEndSymbol, PackageDescriptionFileParser, TempPackageRule)
      1: package parser.states.packagestates;
2: 
3: import parser.PackageDescriptionFileParser;
4: import parser.ParserConstants;
5: import parser.TempPackageRule;
6: import model.packages.PackageRule;
7: import symbols.CommentSymbol;
8: import symbols.OptionSymbol;
9: import symbols.RowEndSymbol;
10: import symbols.PackageDescriptionSymbolVisitorWithTempRule;
11: 
12: /**
13:  * This class represents the Visitor for the PathStateSymbol.
14:  * 
15:  * @author HFW410
16:  */
17: public class PathStateSymbolVisitor extends PackageDescriptionSymbolVisitorWithTempRule {
18:         /**
19:          * The constructor for the PathStateSymbolVisitor.
20:          */
21:         public PathStateSymbolVisitor() {
22:                 super(ParserConstants.PATH_FEHLER);
23:         }
24: 
25:         @Override
26:         public AbstractPackageParserState handle(final CommentSymbol commentSymbol,
27:                         final PackageDescriptionFileParser parser, final TempPackageRule tempPackageRule) {
28:                 parser.addPackageRule(new PackageRule(tempPackageRule.getValue(), tempPackageRule
29:                                 .getPath(), tempPackageRule.getVariable(), tempPackageRule.getPosition(),
30:                                 tempPackageRule.getOptions()));
31:                 return new CommentState(parser);
32: 
33:         }
34: 
35:         @Override
36:         public AbstractPackageParserState handle(final RowEndSymbol rowEndSymbol,
37:                         final PackageDescriptionFileParser parser, final TempPackageRule tempPackageRule)
38:                         throws InterruptedException {
39:                 parser.addPackageRule(new PackageRule(tempPackageRule.getValue(), tempPackageRule
40:                                 .getPath(), tempPackageRule.getVariable(), tempPackageRule.getPosition(),
41:                                 tempPackageRule.getOptions()));
42:                 parser.skip();
43:                 return new PackageDescriptionInitialState(parser);
44:         }
45: 
46:         @Override
47:         public AbstractPackageParserState handle(final OptionSymbol optionSymbol,
48:                         final PackageDescriptionFileParser parser, final TempPackageRule tempPackageRule) {
49:                 return new OptionState(parser, tempPackageRule);
50:         }
51: }