1
0
mirror of https://github.com/ubf/ubf.git synced 2026-04-22 04:35:53 +00:00
Files
ubf/doc/ubf_plugin_meta_stateless.md
Joseph Wayne Norton 39468d05e2 Update docs
2013-03-26 12:41:39 +09:00

118 lines
3.4 KiB
Markdown

# Abstract module ubf_plugin_meta_stateless [MODULES] #
* [Description](#description)
* [Function Index](#index)
* [Function Details](#functions)
<p>Implement the UBF(c) meta-protocol for UBF(b) "stateless"
contracts.</p>
<pre><code>The metaprotocol is used at the beginning of a UBF session to
select one of the UBF(b) contracts that the TCP listener is
capable of offering. The list of contracts (or more precisely,
the Erlang modules that implement the contract(s)) is passed via
the +ubf_server:start_link()+ function, in the +PluginModule+
list.</code></pre>
<pre><code>Code in this module is executed by the "Plugin Handler" process in
the Process Structure Diagram in the Overview.</code></pre>
<pre><code>For the purposes of this module, the list of modules that
implement contracts is passed using parameterized module
+Module:new(ModuleList)+ syntax.</code></pre>
.
<a name="index"></a>
## Function Index ##
<table width="100%" border="1" cellspacing="0" cellpadding="2" summary="function index"><tr><td valign="top"><a href="#description-0">description/0</a></td><td><p>Emit a description string.</p>.</td></tr><tr><td valign="top"><a href="#handlerRpc-1">handlerRpc/1</a></td><td><p>Required UBF contract implementation callback: call an RPC function.</p>.</td></tr><tr><td valign="top"><a href="#handlerStart-1">handlerStart/1</a></td><td><p>Required UBF contract implementation callback: start a new session
handler process.</p>.</td></tr><tr><td valign="top"><a href="#handlerStop-3">handlerStop/3</a></td><td><p>Required UBF contract implementation callback: stop a session
handler process.</p>.</td></tr><tr><td valign="top"><a href="#info-0">info/0</a></td><td><p>Emit an info string.</p>.</td></tr><tr><td valign="top"><a href="#managerRestart-2">managerRestart/2</a></td><td><p>Required UBF contract implementation callback: restart a manager
process.</p>.</td></tr><tr><td valign="top"><a href="#managerRpc-2">managerRpc/2</a></td><td><p>Required UBF contract implementation callback: call a manager's RPC
function.</p>.</td></tr><tr><td valign="top"><a href="#managerStart-1">managerStart/1</a></td><td><p>Required UBF contract implementation callback: start manager
process(es).</p>.</td></tr></table>
<a name="functions"></a>
## Function Details ##
<a name="description-0"></a>
### description/0 ###
`description() -> any()`
<p>Emit a description string.</p>
<a name="handlerRpc-1"></a>
### handlerRpc/1 ###
`handlerRpc(X1) -> any()`
<p>Required UBF contract implementation callback: call an RPC function.</p>
<a name="handlerStart-1"></a>
### handlerStart/1 ###
`handlerStart(X1) -> any()`
<p>Required UBF contract implementation callback: start a new session
handler process.</p>
<a name="handlerStop-3"></a>
### handlerStop/3 ###
`handlerStop(Pid, Reason, State) -> any()`
<p>Required UBF contract implementation callback: stop a session
handler process.</p>
<a name="info-0"></a>
### info/0 ###
`info() -> any()`
<p>Emit an info string.</p>
<a name="managerRestart-2"></a>
### managerRestart/2 ###
`managerRestart(Args, Manager) -> any()`
<p>Required UBF contract implementation callback: restart a manager
process.</p>
<a name="managerRpc-2"></a>
### managerRpc/2 ###
`managerRpc(X1, S) -> any()`
<p>Required UBF contract implementation callback: call a manager's RPC
function.</p>
<a name="managerStart-1"></a>
### managerStart/1 ###
`managerStart(Args) -> any()`
<p>Required UBF contract implementation callback: start manager
process(es).</p>