func NewDropMeasurementWithFilter(f filter.Filter) *DropMeasurementRule {
	measurementFilter := filter.NewMeasurementFilter(f)
	return &DropMeasurementRule{
		filter:  measurementFilter,
		dropped: make(map[string]bool),
		check:   false,
		logger:  logging.GetLogger("DropMeasurementRule"),
	}
}
NewDropMeasurementWithFilter creates a new DropMeasurementRule to rename measurements that uses the given filter
package rules
import (
	"log"
	"github.com/Abc-Arbitrage/infix/filter"
	"github.com/Abc-Arbitrage/infix/logging"
	"github.com/Abc-Arbitrage/infix/storage"
	"github.com/influxdata/influxdb/models"
	"github.com/influxdata/influxdb/tsdb/engine/tsm1"
)
type DropMeasurementRule struct {
	filter filter.Filter
	check bool
	shard   storage.ShardInfo
	dropped map[string]bool
	logger *log.Logger
}
type DropMeasurementRuleConfig struct {
	DropFilter filter.Filter
}
func NewDropMeasurement(srcName string) *DropMeasurementRule {
	filter := filter.NewIncludeFilter([]string{srcName})
	return NewDropMeasurementWithFilter(filter)
}
func NewDropMeasurementWithPattern(pattern string) (*DropMeasurementRule, error) {
	filter, err := filter.NewPatternFilter(pattern)
	if err != nil {
		return nil, err
	}
	return NewDropMeasurementWithFilter(filter), nil
}