### Table of Contents - [constructor](#constructor) - [bind](#bind) - [unbind](#unbind) - [delete](#delete) - [clearUnboundedPorts](#clearunboundedports) - [isBound](#isbound) - [queue](#queue) - [get](#get) - [createChannel](#createchannel) - [getNextMessage](#getnextmessage) ## constructor [portManager.js:32-43](https://github.com/primea/js-primea-hypervisor/blob/add087e94722a8b77695d21eca754a562d7e79f5/portManager.js#L32-L43 "Source code on GitHub") The port manager manages the the ports. This inculdes creation, deletion fetching and waiting on ports **Parameters** - `opts` **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)** - `opts.state` **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)** - `opts.hypervisor` **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)** - `opts.exoInterface` **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)** ## bind [portManager.js:50-71](https://github.com/primea/js-primea-hypervisor/blob/add087e94722a8b77695d21eca754a562d7e79f5/portManager.js#L50-L71 "Source code on GitHub") binds a port to a name **Parameters** - `name` **[String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** the name of the port - `port` **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)** the port to bind ## unbind [portManager.js:78-90](https://github.com/primea/js-primea-hypervisor/blob/add087e94722a8b77695d21eca754a562d7e79f5/portManager.js#L78-L90 "Source code on GitHub") unbinds a port given its name **Parameters** - `name` **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** Returns **[Promise](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise)** ## delete [portManager.js:96-100](https://github.com/primea/js-primea-hypervisor/blob/add087e94722a8b77695d21eca754a562d7e79f5/portManager.js#L96-L100 "Source code on GitHub") delete an port given the name it is bound to **Parameters** - `name` **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** ## clearUnboundedPorts [portManager.js:110-117](https://github.com/primea/js-primea-hypervisor/blob/add087e94722a8b77695d21eca754a562d7e79f5/portManager.js#L110-L117 "Source code on GitHub") clears any unbounded ports referances ## isBound [portManager.js:124-126](https://github.com/primea/js-primea-hypervisor/blob/add087e94722a8b77695d21eca754a562d7e79f5/portManager.js#L124-L126 "Source code on GitHub") check if a port object is still valid **Parameters** - `port` **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)** Returns **[Boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)** ## queue [portManager.js:132-154](https://github.com/primea/js-primea-hypervisor/blob/add087e94722a8b77695d21eca754a562d7e79f5/portManager.js#L132-L154 "Source code on GitHub") queues a message on a port **Parameters** - `name` - `message` **Message** ## get [portManager.js:161-163](https://github.com/primea/js-primea-hypervisor/blob/add087e94722a8b77695d21eca754a562d7e79f5/portManager.js#L161-L163 "Source code on GitHub") gets a port given it's name **Parameters** - `name` **[String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** Returns **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)** ## createChannel [portManager.js:169-174](https://github.com/primea/js-primea-hypervisor/blob/add087e94722a8b77695d21eca754a562d7e79f5/portManager.js#L169-L174 "Source code on GitHub") creates a channel returns the created ports in an Array Returns **[array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)** ## getNextMessage [portManager.js:190-219](https://github.com/primea/js-primea-hypervisor/blob/add087e94722a8b77695d21eca754a562d7e79f5/portManager.js#L190-L219 "Source code on GitHub") Waits for the the next message if any Returns **[Promise](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise)**