all the subscriptions should be conducted at the end of constructure after reading parameters and initializing `detector` and `extractor`.