Commit Graph

135 Commits

Author SHA1 Message Date
Kristóf Tóth
986a67f5db Simplify bool returning function 2018-04-16 12:51:44 +02:00
Kristóf Tóth
22cdbaac2c Fix typo 2018-04-16 12:50:08 +02:00
Kristóf Tóth
b082279916 Implement message validation in TFW proxying 2018-04-14 10:45:23 +02:00
Kristóf Tóth
0cd11f9d64 Remove ambiguous key parameter from proxy module 2018-04-14 10:45:23 +02:00
Kristóf Tóth
fe7bd4a678 Remove ambiguous key parameter from EventHanderConnector 2018-04-14 10:45:23 +02:00
Kristóf Tóth
3c12b5503e Mark old serialization methods as module internal 2018-04-14 10:45:23 +02:00
Kristóf Tóth
499b575adf Add module docstring to serialization.py 2018-04-14 10:45:23 +02:00
Kristóf Tóth
9eb6717972 Refactor 'mirror' message enveloping to use new serialization 2018-04-14 10:45:23 +02:00
Kristóf Tóth
aabaadc4c4 Refactor proxying to use new deserialization 2018-04-14 10:45:23 +02:00
Kristóf Tóth
cd36b6c22c Refactor ServerUplinkConnector to use new serializers 2018-04-14 10:45:23 +02:00
Kristóf Tóth
67a23166c6 Introduce [de]serialize_tfw_msg() methods to abstract away enveloping 2018-04-14 10:45:23 +02:00
Kristóf Tóth
18e9ee5f52 Rename make_response in networking to avoid confusion 2018-04-14 10:45:23 +02:00
Kristóf Tóth
d04479157d Refactor ServerUplinkConnector.send() signature 2018-04-14 10:45:23 +02:00
Kristóf Tóth
73fa65c6e8 Implement triggering of FSM from ServerUplinkConnector 2018-04-11 15:22:54 +02:00
Kristóf Tóth
6113149c58 Rework serialization module to work regardless of message format 2018-04-10 17:37:58 +02:00
Kristóf Tóth
87fa86d314 Refactor FSM triggering in TFWServer 2018-04-10 17:37:58 +02:00
Kristóf Tóth
de8c2ae6e2 Implement FSMUpdates to EventHandlers 2018-04-06 17:14:37 +02:00
Kristóf Tóth
b785b88af6 Pass processed message to FSM trigger predicates 2018-04-06 17:14:06 +02:00
Kristóf Tóth
96c322c17c Silence unjust critique by pylint 2018-04-06 16:52:23 +02:00
Kristóf Tóth
11743e830a Expose ServerUplinkConnector with a name understandable without TFW knowledge 2018-04-06 16:22:21 +02:00
Kristóf Tóth
64bd2f1ba0 Refactor handling of shared EventHandlerConnector ownership to nicen imports 2018-04-06 16:04:25 +02:00
Kristóf Tóth
1f2e1f0489 Refactor whole importing hell into a nice and clean API 2018-04-06 15:31:16 +02:00
Kristóf Tóth
eaa0eee4ca Add LICENSE file and include copyright notice in source files 2018-04-03 14:49:14 +02:00
Kristóf Tóth
d850f55b86 Add pylint local excludes to silence false positives 2018-03-30 18:11:38 +02:00
Kristóf Tóth
3ae0995b95 Make project comply new coding standards and pylint 2018-03-30 17:50:20 +02:00
Kristóf Tóth
43c46a7af2 Integrate ABC module where we have abstract classes 2018-03-27 17:49:32 +02:00
Kristóf Tóth
1982a3c869 Rename TFWENV and TAOENV constants to use capital letters 2018-03-25 16:38:39 +02:00
Kristóf Tóth
ec469c6b75 Remove unnecessary super().__init__() call 2018-03-25 16:38:39 +02:00
Kristóf Tóth
8eded8cbac Make use of format string optimization in logging calls 2018-03-25 16:38:32 +02:00
Kristóf Tóth
5c1431685e Remove unnecessary __init__() call 2018-03-25 16:10:55 +02:00
Kristóf Tóth
aacdbcb0d1 Standardize log constant naming and declaration placement 2018-03-25 16:06:59 +02:00
Kristóf Tóth
1e2ea0ed17 Standardize imports: standard newline package newline tfw 2018-03-25 15:43:59 +02:00
Kristóf Tóth
abcf490019 Strip controller from TFW 2018-03-23 11:37:01 +01:00
Kristóf Tóth
fda242d263 Fix EventHandlerConnector dying painfully on keyless messages 2018-03-21 17:23:18 +01:00
Kristóf Tóth
ccb076c885 Remove depecrated ioloop.install() calls 2018-03-15 16:11:53 +01:00
Kristóf Tóth
f354fd73dc Rename response -> message in ServerConnector classes 2018-03-14 16:11:27 +01:00
Kristóf Tóth
a5d0359ab8 Add helper method to ServerUplinkConnector for EH -> EH communication 2018-03-14 14:09:30 +01:00
Kristóf Tóth
69f03f7615 Implement EventHandler command mirroring (EH -> EH communication) 2018-03-14 14:08:48 +01:00
Kristóf Tóth
6a6236e704 Refactor callback subscription stuff to a mixin 2018-03-07 11:45:57 +01:00
Bokros Bálint
feb946a1bb
Merge pull request #15 from avatao-content/pmgeh
Rework TFW process management capabilities
2018-02-28 17:57:27 +01:00
Kristóf Tóth
e29b300925 Refactor ServerUplinkConnector to avoid passing redundant data 2018-02-28 15:57:44 +01:00
Kristóf Tóth
f21036091c Expose TFWServer.fsm_manager as a property 2018-02-27 13:39:31 +01:00
Kristóf Tóth
770123310a Refactor FSMManager.(un)?subscribe() family of methods to accept lists 2018-02-26 17:52:34 +01:00
Kristóf Tóth
5d7223779a Rework FSMManager predicate contract 2018-02-26 17:47:35 +01:00
Kristóf Tóth
250b9da6d6 Fix FSMManager.unsubscribe_predicate() 2018-02-26 17:24:56 +01:00
Kristóf Tóth
78b689f650 Rename FSMManager handler -> predicate so it actually makes some sense 2018-02-26 17:24:56 +01:00
Kristóf Tóth
7e8ea0c7ac Make FSM triggering dependent on FSMManager 2018-02-26 17:24:56 +01:00
Kristóf Tóth
50c940b21d FSMManager no longer owns the managed FSM 2018-02-26 17:24:56 +01:00
Kristóf Tóth
5776400990 Make FSMManager.fsm a property 2018-02-26 17:24:56 +01:00
Kristóf Tóth
25fd71a2b8 Add message argument to FSMManager.trigger() 2018-02-26 17:24:56 +01:00
Kristóf Tóth
47a4e078de Replace homemade hacky defaultdict with defaultdict ¯\_(ツ)_/¯ 2018-02-26 17:24:56 +01:00
Kristóf Tóth
5e9eb88bfc Implement crude FSMManager – wip 2018-02-26 17:24:56 +01:00
Kristóf Tóth
76456b36de Enable proxying of Triggerless messages in TFWServer 2018-02-23 15:14:23 +01:00
Kristóf Tóth
cf4a5bc09d Refactor FSMUpdate message sending logic to class FSMUpdater 2018-02-23 14:55:58 +01:00
Kristóf Tóth
fd1cb100ad Unify (key, response) ordering 2018-02-23 12:13:19 +01:00
Kristóf Tóth
38ca56fa9d Fix generate_fsm_update() not listing valid transitions properly 2018-02-23 12:08:14 +01:00
Kristóf Tóth
ecbb61a862 Overhaul WS->ZMQ proxying 2018-02-23 12:07:30 +01:00
Kristóf Tóth
26538a4ad9 Make ZMQWebSocketHandler "abstract" 2018-02-21 16:46:25 +01:00
Kristóf Tóth
31ba6cb623 Rename anchor -> key globally ¯\_(ツ)_/¯ 2018-02-21 15:28:16 +01:00
Bálint Bokros
609cd19589 Remove unnecessary super call 2018-02-19 10:02:42 +01:00
Kristóf Tóth
24fd753679 Implement support for multiple websockets connecting to TFW 2018-02-16 17:47:30 +01:00
Bálint Bokros
f5a8230d3b Move ZMQConnectorBase to networking 2018-02-13 17:44:48 +01:00
Bálint Bokros
dda470fc93 Validate token in controller's HTTP handlers 2018-02-13 13:39:27 +01:00
Bálint Bokros
019ce53b39 Share token with solvable upon starting 2018-02-13 13:38:13 +01:00
Bálint Bokros
cb46a8b80e Make controller async 2018-02-12 18:04:59 +01:00
Bálint Bokros
86aecd18a8 Move responding-to-controller related stuff to its own class 2018-02-12 13:22:55 +01:00
Bálint Bokros
6f785b3ca7 Refactor solvable responses 2018-02-12 11:28:35 +01:00
Bálint Bokros
e04cc08dd6 Remove unnecessary autoreload
As running the project outside a Docker container has become unfeasible,
having this feature doesn't make sense anymore.
2018-02-12 11:09:30 +01:00
Kristóf Tóth
4fe9d58681 Move TFWServer to tfw.networking.server package 2018-02-11 12:32:30 +01:00
Kristóf Tóth
0f6ec24d45 Remove unnecessary overrides from ZMQWebSocketHandler 2018-02-11 12:04:18 +01:00
Bálint Bokros
2499c4759e Fix envvar imports 2018-02-09 17:37:56 +01:00
Bálint Bokros
28e83de0d7 Create PoC of solvable with hardcoded responses 2018-02-09 17:37:56 +01:00
Bálint Bokros
95e1f907ee Make serialization methods' parameter names more generic 2018-02-09 17:37:56 +01:00
Bálint Bokros
27376ada22 Create initial version of SolvableConnector 2018-02-09 17:37:56 +01:00
Bálint Bokros
03d6f587e9 Create initial version of ControllerConnector 2018-02-09 17:37:56 +01:00
Kristóf Tóth
83b24ad538 Improve internal handling of environment variables 2018-02-09 10:38:16 +01:00
Bálint Bokros
8b9f7e50cb Move FSM instantiation out of FSMManagingSocketHandler 2018-02-08 14:47:00 +01:00
Kristóf Tóth
849fd7b61c Hotfix eventhandlers invoked several times. Waiting for server refactor. 2018-02-07 10:13:06 +01:00
Kristóf Tóth
08260f70fa Remove leftover ioloop.install() stuff from module global era 2018-02-06 14:26:53 +01:00
Kristóf Tóth
b75709b3e5 Make tfw.networking more structured, remove relative import hell 2018-02-06 14:20:51 +01:00
Kristóf Tóth
de6e23e512 Remove thread safety warning: problem was nonexsistent ¯\_(ツ)_/¯ 2018-02-05 14:23:46 +01:00
Kristóf Tóth
654a732368 Fix ZMQWebSocketHandlers handling their own little FSM instances 2018-02-05 14:10:21 +01:00
Bálint Bokros
96762575ba Move JSON (de)serialization to socket boundaries 2018-02-02 18:39:06 +01:00
Bálint Bokros
31fea13a9a Move serialization in one place 2018-02-02 17:30:26 +01:00
Kristóf Tóth
0d41b4c8e9 Refactor project structure 2018-01-31 15:56:39 +01:00