Okay great. I think I'll need to do a bit more work to see how that'd look. Last thing, does it make sense to have a view be a dependency? The camera2 api needs views in order to build a capture request. I could possibly create the service without passing in any views, or pass in the views and if something happens when it evaluates, either pass the view in again or display an error