示例#1
0
文件: ticker.go 项目: bakhi/test
func CreateTicker(decl udf.UDSFDeclarer, i data.Value) (udf.UDSF, error) {
	interval, err := data.ToDuration(i)
	if err != nil {
		return nil, err
	}
	return &Ticker{
		interval: interval,
	}, nil
}
示例#2
0
文件: lorem.go 项目: bakhi/test
func CreateLoremSource(ctx *core.Context, ioParams *bql.IOParams, params data.Map) (core.Source, error) {
	interval := 1 * time.Microsecond
	if v, ok := params["interval"]; ok {
		i, err := data.ToDuration(v)
		if err != nil {
			return nil, err
		}
		interval = i
	}
	return core.ImplementSourceStop(&LoremSource{
		interval: interval,
	}), nil
}
示例#3
0
文件: collect.go 项目: bakhi/test
func CreateCollector(decl udf.UDSFDeclarer, inputStream, field string, i data.Value) (udf.UDSF, error) {
	interval, err := data.ToDuration(i)
	if err != nil {
		return nil, err
	}

	// cannot understand yet
	if err := decl.Input(inputStream, nil); err != nil {
		return nil, err
	}

	return &Collector{
		interval: interval,
		check:    int(time.Now().Nanosecond() / 1e+8),
	}, nil
}