Skip to content

Method: ServiceToken(Position)

1: package de.fhdw.wtf.common.token.keywords;
2:
3: import de.fhdw.wtf.common.token.Position;
4: import de.fhdw.wtf.common.token.Token;
5:
6: /**
7: * Represents the "service"-modifier as a token in WTF.
8: */
9: public final class ServiceToken extends ClassModifierToken {
10:         
11:         /**
12:          * generated.
13:          */
14:         private static final long serialVersionUID = -2986655846111440741L;
15:         
16:         /**
17:          * Defines constant for hashCodeTemplate().
18:          */
19:         private static final int HASHCODE_TEMPLATE_CONSTANT = 6923497;
20:         
21:         /**
22:          * Defines constant "service" for {@link ServiceToken}.
23:          */
24:         private static final String TEXTUAL_REPRESENTATION = "service";
25:         
26:         /**
27:          * Private constructor for {@link ServiceToken}. Use create(...)-Factory instead!
28:          *
29:          * @param position
30:          * represents the start position of the {@link ClassModifierToken} <service> in the original input.
31:          */
32:         private ServiceToken(final Position position) {
33:                 super(position);
34:         }
35:         
36:         /**
37:          * Factory method for {@link ServiceToken}.
38:          *
39:          * @param position
40:          * represents the start position of this {@link ClassModifierToken} in the original input.
41:          * @return a new instance of this {@link ClassModifierToken}.
42:          */
43:         public static ServiceToken create(final Position position) {
44:                 return new ServiceToken(position);
45:         }
46:         
47:         @Override
48:         public int getLength() {
49:                 return ServiceToken.TEXTUAL_REPRESENTATION.length();
50:         }
51:         
52:         @Override
53:         protected boolean equalsTemplate(final Token t) {
54:                 return t.isServiceToken();
55:         }
56:         
57:         @Override
58:         public String stringRepresentation() {
59:                 return ServiceToken.TEXTUAL_REPRESENTATION;
60:         }
61:         
62:         @Override
63:         public boolean isServiceToken() {
64:                 return true;
65:         }
66:         
67:         @Override
68:         protected int hashCodeTemplate() {
69:                 return HASHCODE_TEMPLATE_CONSTANT;
70:         }
71:         
72: }