1 mike 1.1 int HashStr(const char* s, size_t n)
2 {
3
4 switch (n)
5 {
6 case 0:
7 if (strcmp(s, "") == 0)
8 return TAG46;
9 break;
10 case 4:
11 switch (s[0])
12 {
13 case 78:
14 if (strcmp(s, "None") == 0)
15 return WSMANTAG_ENUM_POLYMORPHISM_MODE_NONE;
16 break;
17 case 97:
18 if (strcmp(s, "a:To") == 0)
19 return WSMANTAG_TO;
20 break;
21 }
22 mike 1.1
23 break;
24 case 6:
25 if (strcmp(s, "n:Pull") == 0)
26 return WSMANTAG_ENUM_PULL;
27 break;
28 case 7:
29 if (strcmp(s, "Dialect") == 0)
30 return WSMANTAG_ENUM_DIALIECT;
31 break;
32 case 8:
33 switch (s[0])
34 {
35 case 97:
36 if (strcmp(s, "a:Action") == 0)
37 return WSMANTAG_ACTION;
38 break;
39 case 115:
40 if (strcmp(s, "s:Header") == 0)
41 return WSMANTAG_HEADER;
42 break;
43 mike 1.1 case 119:
44 if (strcmp(s, "w:Filter") == 0)
45 return WSMANTAG_ENUM_FILTER;
46 break;
47 }
48
49 break;
50 case 9:
51 switch (s[4])
52 {
53 case 100:
54 if (strcmp(s, "a:Address") == 0)
55 return WSMANTAG_ADDRESS;
56 break;
57 case 108:
58 if (strcmp(s, "n:Release") == 0)
59 return WSMANTAG_ENUM_RELEASE;
60 break;
61 case 112:
62 if (strcmp(s, "a:ReplyTo") == 0)
63 return WSMANTAG_REPLY_TO;
64 mike 1.1 break;
65 }
66
67 break;
68 case 10:
69 switch (s[0])
70 {
71 case 105:
72 if (strcmp(s, "i:Identify") == 0)
73 return WSMANTAG_IDENTIFY;
74 break;
75 case 119:
76 if (strcmp(s, "w:Selector") == 0)
77 return WSMANTAG_SELECTOR;
78 break;
79 }
80
81 break;
82 case 11:
83 switch (s[0])
84 {
85 mike 1.1 case 97:
86 if (strcmp(s, "a:MessageID") == 0)
87 return WSMANTAG_MESSAGE_ID;
88 break;
89 case 110:
90 if (strcmp(s, "n:Enumerate") == 0)
91 return WSMANTAG_ENUM_ENUMERATE;
92 break;
93 }
94
95 break;
96 case 12:
97 if (strcmp(s, "EnumerateEPR") == 0)
98 return WSMANTAG_ENUM_MODE_EPR;
99 break;
100 case 13:
101 switch (s[2])
102 {
103 case 77:
104 if (strcmp(s, "w:MaxElements") == 0)
105 return WSMANTAG_ENUM_MAX_ELEMENTS;
106 mike 1.1 if (strcmp(s, "n:MaxElements") == 0)
107 return WSMANTAG_PULL_MAX_ELEMENTS;
108 break;
109 case 82:
110 if (strcmp(s, "w:ResourceURI") == 0)
111 return WSMANTAG_RESOURCE_URI;
112 break;
113 case 83:
114 if (strcmp(s, "w:SelectorSet") == 0)
115 return WSMANTAG_SELECTOR_SET;
116 break;
117 }
118
119 break;
120 case 15:
121 if (strcmp(s, "EnumerateObject") == 0)
122 return WSMANTAG_ENUM_MODE_OBJECT;
123 break;
124 case 17:
125 switch (s[2])
126 {
127 mike 1.1 case 69:
128 if (strcmp(s, "w:EnumerationMode") == 0)
129 return WSMANTAG_ENUM_MODE;
130 break;
131 case 77:
132 if (strcmp(s, "w:MaxEnvelopeSize") == 0)
133 return WSMANTAG_MAX_ENVELOPE_SIZE;
134 break;
135 }
136
137 break;
138 case 18:
139 if (strcmp(s, "b:PolymorphismMode") == 0)
140 return WSMANTAG_ENUM_POLYMORPHISM_MODE;
141 break;
142 case 20:
143 if (strcmp(s, "n:EnumerationContext") == 0)
144 return WSMANTAG_PULL_ENUMERATION_CONTEXT;
145 break;
146 case 21:
147 switch (s[0])
148 mike 1.1 {
149 case 69:
150 if (strcmp(s, "EnumerateObjectAndEPR") == 0)
151 return WSMANTAG_ENUM_MODE_OBJECT_AND_EPR;
152 break;
153 case 119:
154 if (strcmp(s, "w:OptimizeEnumeration") == 0)
155 return WSMANTAG_ENUM_OPTIMIZE_ENUMERATION;
156 break;
157 }
158
159 break;
160 case 25:
161 switch (s[0])
162 {
163 case 69:
164 if (strcmp(s, "ExcludeSubClassProperties") == 0)
165 return WSMANTAG_ENUM_POLYMORPHISM_MODE_EXCLUDE_PROPS;
166 break;
167 case 73:
168 if (strcmp(s, "IncludeSubClassProperties") == 0)
169 mike 1.1 return WSMANTAG_ENUM_POLYMORPHISM_MODE_INCLUDE_PROPS;
170 break;
171 }
172
173 break;
174 case 50:
175 switch (s[47])
176 {
177 case 71:
178 if (strcmp(s, "http://schemas.xmlsoap.org/ws/2004/09/transfer/Get") == 0)
179 return WSMANTAG_ACTION_GET;
180 break;
181 case 80:
182 if (strcmp(s, "http://schemas.xmlsoap.org/ws/2004/09/transfer/Put") == 0)
183 return WSMANTAG_ACTION_PUT;
184 break;
185 }
186
187 break;
188 case 53:
189 switch (s[47])
190 mike 1.1 {
191 case 67:
192 if (strcmp(s, "http://schemas.xmlsoap.org/ws/2004/09/transfer/Create") == 0)
193 return WSMANTAG_ACTION_CREATE;
194 break;
195 case 68:
196 if (strcmp(s, "http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete") == 0)
197 return WSMANTAG_ACTION_DELETE;
198 break;
199 }
200
201 break;
202 case 54:
203 if (strcmp(s, "http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull") == 0)
204 return WSMANTAG_ACTION_PULL;
205 break;
206 case 57:
207 if (strcmp(s, "http://schemas.xmlsoap.org/ws/2004/09/enumeration/Release") == 0)
208 return WSMANTAG_ACTION_RELEASE;
209 break;
210 case 59:
211 mike 1.1 if (strcmp(s, "http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate") == 0)
212 return WSMANTAG_ACTION_ENUMERATE;
213 break;
214 }
215 /* Not found */
216 return 0;
217 }
|