private void verifyLineIndices(IndexRange... ranges) { verifyNotNull(ranges); for (IndexRange indexRange : ranges) { if (indexRange.startIndex < 1) { throw new IllegalArgumentException(String.format("Start line/column must be >= 1 but was %s.", indexRange.startIndex)); } } }
private void verifyLineIndices(IndexRange... ranges) { verifyNotNull(ranges); for (IndexRange indexRange : ranges) { if (indexRange.startIndex < 1) { throw new IllegalArgumentException(String.format("Start line/column must be >= 1 but was %s.", indexRange.startIndex)); } } }
/** * Add a filter for all source sections that equal one of the given source sections. * * @param section matches one of the given source sections * @return the builder to chain calls * @since 0.12 */ public Builder sourceSectionEquals(SourceSection... section) { verifyNotNull(section); expressions.add(new EventFilterExpression.SourceSectionEquals(section)); return this; }
/** * Add a filter for all source sections that are tagged with one of the given tags. * * @param tags matches one of the given tags * @return the builder to chain calls * @since 0.12 */ public Builder tagIs(Class<?>... tags) { verifyNotNull(tags); expressions.add(new EventFilterExpression.TagIs(tags)); return this; }
/** * Add a filter for one of the given sources. * * @since 0.32 */ public Builder sourceIs(Source... source) { SourceSectionFilter.verifyNotNull(source); expressions.add(new EventFilterExpression.SourceIs(source)); return this; }
/** * Add a filter for all source sections which indices are contained in one of the given * index ranges. * * @param ranges matches indices that are contained in one of the given index ranges * @return the builder to chain calls * @since 0.12 */ public Builder indexIn(IndexRange... ranges) { verifyNotNull(ranges); expressions.add(new EventFilterExpression.IndexIn(ranges)); return this; }
/** * Add a filter for all source sections that reference one of the given sources. * * @since 0.12 */ public Builder sourceIs(Source... source) { verifyNotNull(source); expressions.add(new EventFilterExpression.SourceIs(source)); return this; }
/** * Add a filter for all source sections that are tagged with one of the given tags. * * @param tags matches one of the given tags * @return the builder to chain calls * @since 0.12 */ public Builder tagIs(Class<?>... tags) { verifyNotNull(tags); expressions.add(new EventFilterExpression.TagIs(tags)); return this; }
/** * Add a filter for all source sections that equal one of the given source sections. * * @param section matches one of the given source sections * @return the builder to chain calls * @since 0.12 */ public Builder sourceSectionEquals(SourceSection... section) { verifyNotNull(section); expressions.add(new EventFilterExpression.SourceSectionEquals(section)); return this; }
/** * Add a filter for one of the given sources. * * @since 0.32 */ public Builder sourceIs(Source... source) { SourceSectionFilter.verifyNotNull(source); expressions.add(new EventFilterExpression.SourceIs(source)); return this; }
/** * Add a filter for all source sections that reference one of the given sources. * * @since 0.12 */ public Builder sourceIs(Source... source) { verifyNotNull(source); expressions.add(new EventFilterExpression.SourceIs(source)); return this; }
/** * Add a filter for all source sections that declare one of the given mime-types. Mime-types * which are compared must match exactly one of the mime-types specified by the target guest * language. * * @param mimeTypes matches one of the given mime types * @return the builder to chain calls * @since 0.12 */ public Builder mimeTypeIs(String... mimeTypes) { verifyNotNull(mimeTypes); expressions.add(new EventFilterExpression.MimeTypeIs(mimeTypes)); return this; }
/** * Add a filter for all root source sections that equal one of the given source sections. * All descendant source sections of a matching root source section are included in the * filter. This can mean in the dynamic language domain that all nodes of a function for * which the root source section matches the given source section is instrumented but its * inner functions and its nodes are not instrumented. * * @param section matches one of the given root source sections * @return the builder to chain calls * @since 0.12 */ public Builder rootSourceSectionEquals(SourceSection... section) { verifyNotNull(section); expressions.add(new EventFilterExpression.RootSourceSectionEquals(section)); return this; }
/** * Add a filter for all source sections which indices are contained in one of the given * index ranges. * * @param ranges matches indices that are contained in one of the given index ranges * @return the builder to chain calls * @since 0.12 */ public Builder indexIn(IndexRange... ranges) { verifyNotNull(ranges); expressions.add(new EventFilterExpression.IndexIn(ranges)); return this; }
/** * Add a filter for all source sections that declare one of the given mime-types. Mime-types * which are compared must match exactly one of the mime-types specified by the target guest * language. * * @param mimeTypes matches one of the given mime types * @return the builder to chain calls * @since 0.12 */ public Builder mimeTypeIs(String... mimeTypes) { verifyNotNull(mimeTypes); expressions.add(new EventFilterExpression.MimeTypeIs(mimeTypes)); return this; }
/** * Add a filter for all root source sections that equal one of the given source sections. * All descendant source sections of a matching root source section are included in the * filter. This can mean in the dynamic language domain that all nodes of a function for * which the root source section matches the given source section is instrumented but its * inner functions and its nodes are not instrumented. * * @param section matches one of the given root source sections * @return the builder to chain calls * @since 0.12 */ public Builder rootSourceSectionEquals(SourceSection... section) { verifyNotNull(section); expressions.add(new EventFilterExpression.RootSourceSectionEquals(section)); return this; }
/** * Add a filter for all source sections which indices are not contained in one of the given * index ranges. * * @param ranges matches indices that are not contained in one of the given index ranges * @return the builder to chain calls * @since 0.12 */ public Builder indexNotIn(IndexRange... ranges) { verifyNotNull(ranges); expressions.add(new Not(new EventFilterExpression.IndexIn(ranges))); return this; }
/** * Add a filter for all source sections that are not tagged with one of the given tags. * * @param tags matches not one of the given tags * @return the builder to chain calls * @since 0.12 */ public Builder tagIsNot(Class<?>... tags) { verifyNotNull(tags); expressions.add(new Not(new EventFilterExpression.TagIs(tags))); return this; }
/** * Add a filter for all source sections that are not tagged with one of the given tags. * * @param tags matches not one of the given tags * @return the builder to chain calls * @since 0.12 */ public Builder tagIsNot(Class<?>... tags) { verifyNotNull(tags); expressions.add(new Not(new EventFilterExpression.TagIs(tags))); return this; }
/** * Add a filter for all source sections which indices are not contained in one of the given * index ranges. * * @param ranges matches indices that are not contained in one of the given index ranges * @return the builder to chain calls * @since 0.12 */ public Builder indexNotIn(IndexRange... ranges) { verifyNotNull(ranges); expressions.add(new Not(new EventFilterExpression.IndexIn(ranges))); return this; }