question: protected AnnotationQuery ( String scope , String metric , Map < String , String > tags , Long startTimestamp , Long endTimestamp ) { this ( ) ; requireArgument ( startTimestamp != null , "Start Timestamp cannot be null." ) ; requireArgument ( scope != null , "Scope cannot be null" ) ; requireArgument ( metric == null || ! metric . isEmpty ( ) , "Metric can be null, but if specified, cannot be empty" ) ; _startTimestamp = startTimestamp ; _endTimestamp = endTimestamp ; _scope = scope ; _metric = metric ; if ( tags != null ) { setTags ( tags ) ; } }
target:  Creates a new AnnotationQuery object.