Extract the creation of TsdbQuery objects into a QueryBuilder

Is it enough with: checkNotNull(metric) //row 144 to be sure that the user don't call both?