0.5.0 • Published 6 years ago

node-barrier v0.5.0

Weekly downloads
1
License
MIT
Repository
-
Last release
6 years ago

NodeBarrier

Intro

Barrier to block you operation

Author

gintama.zheng@gmail.com

Latest Version

0.5.0

How To Install

yarn add node-barrier@0.5.0

Dependencies

  • @log4js-node/log4js-api"

Test Dependencies

  • @types/chai
  • @types/mocha
  • @types/node
  • chai
  • log4js
  • mocha

Usage

Example for BarrierInterval

const { Barrier, BarrierFactory, BarrierOperator } = require('node-barrier')

// create barrier to block operation count to 10 per second
const barrier = BarrierFactory.makeBarrierInterval({
            cleanIntervalInMills: 1000,
            maxCount: 10
        })

await BarrierOperator.wait(barrier)
barrier.increaseCounter()
// perform you operation

Example for BarrierAnd

const { Barrier, BarrierFactory, BarrierOperator } = require('node-barrier')

// create barrier to block operation count to 10 per second
const barrier1 = BarrierFactory.makeBarrierInterval({
            cleanIntervalInMills: 1000,
            maxCount: 10
        })
const barrier2 = BarrierFactory.makeBarrierInterval({
            cleanIntervalInMills: 2000,
            maxCount: 10
        })
const barrier = BarrierOperator.and(barrier1, barrier2)

const blockTime = barrier.computeBlockTimeInMills()
await BarrierOperator.wait(barrier)
barrier.increaseCounter()
// perform you operation

Example for BarrierOr

const { Barrier, BarrierFactory, BarrierOperator } = require('node-barrier')

// create barrier to block operation count to 10 per second
const barrier1 = BarrierFactory.makeBarrierInterval({
            cleanIntervalInMills: 1000,
            maxCount: 10
        })
const barrier2 = BarrierFactory.makeBarrierInterval({
            cleanIntervalInMills: 2000,
            maxCount: 10
        })
const barrier = BarrierOperator.or(barrier1, barrier2)

await BarrierOperator.wait(barrier)
barrier.increaseCounter()
// perform you operation
0.5.0

6 years ago

0.4.0

6 years ago

0.3.0

6 years ago

0.2.0

6 years ago

0.1.0

6 years ago