middleware.js

Members

(static, constant) allowedGetters :Object

Enumeration of allowed getters where the keys are method names.

Type:
  • Object

(static, constant) allowedMediators :Object

Enumeration of allowed mediators where the keys are method names.

Type:
  • Object

(static, constant) allowedSetters :Object

Enumeration of allowed setters where the keys are method names.

Type:
  • Object

(inner, constant) middlewares

Methods

(static) clearCacheForPlayer(player)

Clear the middleware cache for a player.

Parameters:
NameTypeDescription
playerPlayer

A Player instance.

(static) get(middleware, tech, method) → {*}

Calls a getter on the tech first, through each middleware from right to left to the player.

Parameters:
NameTypeDescription
middlewareArray.<Object>

An array of middleware instances.

techTech

The current tech.

methodstring

A method name.

Returns:

The final value from the tech after middleware has intercepted it.

Type: 
*

(static) getMiddleware(type) → {Array.<function()>|undefined}

Gets middlewares by type (or all middlewares).

Parameters:
NameTypeDescription
typestring

The MIME type to match or "*" for all MIME types.

Returns:

An array of middlewares or undefined if none exist.

Type: 
Array.<function()> | undefined

(static) mediate(middleware, tech, method, arg) → {*}

Takes the argument given to the player and calls the call version of the method on each middleware from left to right.

Then, call the passed in method on the tech and return the result unchanged back to the player, through middleware, this time from right to left.

Parameters:
NameTypeDescription
middlewareArray.<Object>

An array of middleware instances.

techTech

The current tech.

methodstring

A method name.

arg*

The value to set on the tech.

Returns:

The return value of the method of the tech, regardless of the return values of middlewares.

Type: 
*

(static) set(middleware, tech, method, arg) → {*}

Takes the argument given to the player and calls the setter method on each middleware from left to right to the tech.

Parameters:
NameTypeDescription
middlewareArray.<Object>

An array of middleware instances.

techTech

The current tech.

methodstring

A method name.

arg*

The value to set on the tech.

Returns:

The return value of the method of the tech.

Type: 
*

(static) setSource(player, src, The)

Asynchronously sets a source using middleware by recursing through any matching middlewares and calling setSource on each, passing along the previous returned value each time.

Parameters:
NameTypeDescription
playerPlayer

A Player instance.

srcTech~SourceObject

A source object.

Thefunction

next middleware to run.

(static) setTech(middleware, tech)

When the tech is set, passes the tech to each middleware's setTech method.

Parameters:
NameTypeDescription
middlewareArray.<Object>

An array of middleware instances.

techTech

A Video.js tech.

(static) use(type, middleware)

Define a middleware that the player should use by way of a factory function that returns a middleware object.

Parameters:
NameTypeDescription
typestring

The MIME type to match or "*" for all MIME types.

middlewareMiddlewareFactory

A middleware factory function that will be executed for matching types.

Type Definitions

MiddlewareFactory(player)

A middleware factory function that should return a MiddlewareObject.

This factory will be called for each player when needed, with the player passed in as an argument.

Parameters:
NameTypeDescription
playerPlayer

A Video.js player.

MiddlewareObject

A middleware object is a plain JavaScript object that has methods that match the Tech methods found in the lists of allowed getters, setters, and mediators.

Type:
  • Object