22 #include <boost/unordered_map.hpp>
26 typedef multimap<string, string> state_multimap;
27 typedef multimap<string, string>::value_type state_pair;
28 typedef multimap<string, string>::iterator state_multimap_iter;
29 void load_engine_state_transitions(state_multimap &states);
31 void load_engine_state_transitions(state_multimap &states)
33 states.insert(state_pair(
"INIT",
"::SEAPITester()"));
34 states.insert(state_pair(
"::SEAPITester()",
"::~SEAPITester()"));
35 states.insert(state_pair(
"::SEAPITester()",
"::max_supported_key_length()"));
36 states.insert(state_pair(
"::max_supported_key_length()",
"::max_supported_keys()"));
37 states.insert(state_pair(
"::max_supported_key_length()",
"::max_supported_key_parts()"));
38 states.insert(state_pair(
"::max_supported_keys()",
"::doCreateTable()"));
40 states.insert(state_pair(
"::max_supported_keys()",
"::max_supported_key_part_length()"));
43 states.insert(state_pair(
"::max_supported_keys()",
"END STATEMENT"));
45 states.insert(state_pair(
"::max_supported_key_part_length()",
"::max_supported_key_part_length()"));
46 states.insert(state_pair(
"::max_supported_key_part_length()",
"::doCreateTable()"));
48 states.insert(state_pair(
"::max_supported_key_parts()",
"::max_supported_key_parts()"));
49 states.insert(state_pair(
"::max_supported_key_parts()",
"::max_supported_keys()"));
52 states.insert(state_pair(
"START STATEMENT",
"::max_supported_key_length()"));
54 states.insert(state_pair(
"::doCreateTable()",
"::SEAPITester()"));
57 states.insert(state_pair(
"::SEAPITester()",
"BEGIN"));
58 states.insert(state_pair(
"BEGIN",
"In Transaction"));
59 states.insert(state_pair(
"In Transaction",
"START STATEMENT"));
62 states.insert(state_pair(
"In Transaction",
"END STATEMENT"));
64 states.insert(state_pair(
"::SEAPITester()",
"COMMIT"));
66 states.insert(state_pair(
"In Transaction",
"COMMIT"));
67 states.insert(state_pair(
"In Transaction",
"ROLLBACK"));
68 states.insert(state_pair(
"START STATEMENT",
"END STATEMENT"));
69 states.insert(state_pair(
"START STATEMENT",
"ROLLBACK STATEMENT"));
70 states.insert(state_pair(
"ROLLBACK STATEMENT",
"In Transaction"));
71 states.insert(state_pair(
"END STATEMENT",
"START STATEMENT"));
72 states.insert(state_pair(
"END STATEMENT",
"COMMIT STATEMENT"));
73 states.insert(state_pair(
"COMMIT STATEMENT",
"In Transaction"));
74 states.insert(state_pair(
"END STATEMENT",
"COMMIT"));
75 states.insert(state_pair(
"END STATEMENT",
"ROLLBACK"));
76 states.insert(state_pair(
"END STATEMENT",
"ROLLBACK STATEMENT"));
78 states.insert(state_pair(
"In Transaction",
"SET SAVEPOINT"));
79 states.insert(state_pair(
"In Transaction",
"ROLLBACK TO SAVEPOINT"));
80 states.insert(state_pair(
"In Transaction",
"RELEASE SAVEPOINT"));
81 states.insert(state_pair(
"SET SAVEPOINT",
"In Transaction"));
82 states.insert(state_pair(
"ROLLBACK TO SAVEPOINT",
"BEGIN"));
83 states.insert(state_pair(
"RELEASE SAVEPOINT",
"BEGIN"));
85 states.insert(state_pair(
"COMMIT",
"::SEAPITester()"));
86 states.insert(state_pair(
"ROLLBACK",
"::SEAPITester()"));
87 states.insert(state_pair(
"::SEAPITester()",
"::doGetTableDefinition()"));
88 states.insert(state_pair(
"::doGetTableDefinition()",
"::SEAPITester()"));
91 states.insert(state_pair(
"::SEAPITester()",
"START STATEMENT"));