Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 19 for InitOnce (0.24 sec)

  1. internal/cachevalue/cache_test.go

    package cachevalue
    
    import (
    	"testing"
    	"time"
    )
    
    func TestCache(t *testing.T) {
    	cache := New[time.Time]()
    	t.Parallel()
    	cache.InitOnce(2*time.Second, Opts{},
    		func() (time.Time, error) {
    			return time.Now(), nil
    		},
    	)
    
    	t1, _ := cache.Get()
    
    	t2, _ := cache.Get()
    
    	if !t1.Equal(t2) {
    Go
    - Registered: Sun Apr 28 19:28:10 GMT 2024
    - Last Modified: Wed Feb 28 17:09:09 GMT 2024
    - 1.5K bytes
    - Viewed (0)
  2. internal/event/target/redis.go

    			return fmt.Errorf("expected type %v does not match with available type %v", expectedType, typeAvailable)
    		}
    	}
    
    	return nil
    }
    
    // RedisTarget - Redis target.
    type RedisTarget struct {
    	initOnce once.Init
    
    	id         event.TargetID
    	args       RedisArgs
    	pool       *redis.Pool
    	store      store.Store[event.Event]
    	firstPing  bool
    	loggerOnce logger.LogOnce
    	quitCh     chan struct{}
    }
    
    Go
    - Registered: Sun Apr 28 19:28:10 GMT 2024
    - Last Modified: Tue Mar 19 04:37:54 GMT 2024
    - 9.1K bytes
    - Viewed (0)
  3. internal/cachevalue/cache.go

    	return &Cache[T]{
    		ttl:      ttl,
    		updateFn: update,
    		opts:     opts,
    	}
    }
    
    // InitOnce initializes the cache with a TTL and an update function. It is
    // guaranteed to be called only once.
    func (t *Cache[T]) InitOnce(ttl time.Duration, opts Opts, update func() (T, error)) {
    	t.Once.Do(func() {
    		t.ttl = ttl
    		t.updateFn = update
    		t.opts = opts
    	})
    }
    
    Go
    - Registered: Sun Apr 28 19:28:10 GMT 2024
    - Last Modified: Fri Mar 01 16:00:42 GMT 2024
    - 4.2K bytes
    - Viewed (0)
  4. internal/event/target/nsq.go

    	}
    	if n.QueueDir != "" {
    		if !filepath.IsAbs(n.QueueDir) {
    			return errors.New("queueDir path should be absolute")
    		}
    	}
    
    	return nil
    }
    
    // NSQTarget - NSQ target.
    type NSQTarget struct {
    	initOnce once.Init
    
    	id         event.TargetID
    	args       NSQArgs
    	producer   *nsq.Producer
    	store      store.Store[event.Event]
    	config     *nsq.Config
    	loggerOnce logger.LogOnce
    	quitCh     chan struct{}
    }
    Go
    - Registered: Sun Apr 28 19:28:10 GMT 2024
    - Last Modified: Sat Oct 07 15:07:38 GMT 2023
    - 7.1K bytes
    - Viewed (0)
  5. internal/event/target/mysql.go

    		}
    	}
    
    	if m.MaxOpenConnections < 0 {
    		return errors.New("maxOpenConnections cannot be less than zero")
    	}
    
    	return nil
    }
    
    // MySQLTarget - MySQL target.
    type MySQLTarget struct {
    	initOnce once.Init
    
    	id         event.TargetID
    	args       MySQLArgs
    	updateStmt *sql.Stmt
    	deleteStmt *sql.Stmt
    	insertStmt *sql.Stmt
    	db         *sql.DB
    	store      store.Store[event.Event]
    	firstPing  bool
    Go
    - Registered: Sun Apr 28 19:28:10 GMT 2024
    - Last Modified: Sat Oct 07 15:07:38 GMT 2023
    - 11.5K bytes
    - Viewed (0)
  6. internal/event/target/mqtt.go

    		}
    		if m.QoS == 0 {
    			return errors.New("qos should be set to 1 or 2 if queueDir is set")
    		}
    	}
    
    	return nil
    }
    
    // MQTTTarget - MQTT target.
    type MQTTTarget struct {
    	initOnce once.Init
    
    	id         event.TargetID
    	args       MQTTArgs
    	client     mqtt.Client
    	store      store.Store[event.Event]
    	quitCh     chan struct{}
    	loggerOnce logger.LogOnce
    }
    
    Go
    - Registered: Sun Apr 28 19:28:10 GMT 2024
    - Last Modified: Sat Oct 07 15:07:38 GMT 2023
    - 8.2K bytes
    - Viewed (0)
  7. internal/event/target/webhook.go

    		return errors.New("cert and key must be specified as a pair")
    	}
    	return nil
    }
    
    // WebhookTarget - Webhook target.
    type WebhookTarget struct {
    	initOnce once.Init
    
    	id         event.TargetID
    	args       WebhookArgs
    	transport  *http.Transport
    	httpClient *http.Client
    	store      store.Store[event.Event]
    	loggerOnce logger.LogOnce
    Go
    - Registered: Sun Apr 28 19:28:10 GMT 2024
    - Last Modified: Mon Nov 20 22:40:07 GMT 2023
    - 8.5K bytes
    - Viewed (0)
  8. cmd/bucket-quota.go

    	return &BucketQuotaSys{}
    }
    
    var bucketStorageCache = cachevalue.New[DataUsageInfo]()
    
    // Init initialize bucket quota.
    func (sys *BucketQuotaSys) Init(objAPI ObjectLayer) {
    	bucketStorageCache.InitOnce(10*time.Second,
    		cachevalue.Opts{ReturnLastGood: true, NoWait: true},
    		func() (DataUsageInfo, error) {
    			ctx, done := context.WithTimeout(context.Background(), 2*time.Second)
    			defer done()
    
    Go
    - Registered: Sun Apr 28 19:28:10 GMT 2024
    - Last Modified: Thu Apr 04 12:04:40 GMT 2024
    - 4.3K bytes
    - Viewed (0)
  9. internal/event/target/amqp.go

    		if !filepath.IsAbs(a.QueueDir) {
    			return errors.New("queueDir path should be absolute")
    		}
    	}
    
    	return nil
    }
    
    // AMQPTarget - AMQP target
    type AMQPTarget struct {
    	initOnce once.Init
    
    	id         event.TargetID
    	args       AMQPArgs
    	conn       *amqp091.Connection
    	connMutex  sync.Mutex
    	store      store.Store[event.Event]
    	loggerOnce logger.LogOnce
    
    Go
    - Registered: Sun Apr 28 19:28:10 GMT 2024
    - Last Modified: Sat Oct 07 15:07:38 GMT 2023
    - 10K bytes
    - Viewed (0)
  10. internal/event/target/elasticsearch.go

    		return errors.New("username and password should be set in pairs")
    	}
    
    	return nil
    }
    
    // ElasticsearchTarget - Elasticsearch target.
    type ElasticsearchTarget struct {
    	initOnce once.Init
    
    	id         event.TargetID
    	args       ElasticsearchArgs
    	client     esClient
    	store      store.Store[event.Event]
    	loggerOnce logger.LogOnce
    	quitCh     chan struct{}
    }
    
    Go
    - Registered: Sun Apr 28 19:28:10 GMT 2024
    - Last Modified: Thu Jan 18 07:03:17 GMT 2024
    - 15K bytes
    - Viewed (0)
Back to top