[an error occurred while processing this directive]
[<a href="index.shtml">Package Index</a></code> | <a href="index_std.shtml">Mudlib Index</a></code> | <a href="index_eff.shtml">Effect Index</a></code>]<br><h2>File /obj/handlers/key_handler.c</h2>
This handler keeps track of the keys.  The keys are arranged in
groups and each key type in the group has a name and a set of
permissions associated with it.<p>Written by Deutha
<h2>Inherits</h2>
This class inherits the following classes /std/object.c<h2>Method index</h2>
<ul>
<li><a href="#add_key_permission">add_key_permission</a>(string, string, string)<br/>
This method adds in a specific permission type into the current
permission set for this key.
<li><a href="#delete_key_name">delete_key_name</a>(string, string)<br/>
This method removes a specified key name from the current key name
mapping.
<li><a href="#query_all_key_names">query_all_key_names</a>(string)<br/>
This method returns all the key names for the given key group.
<li><a href="#query_all_key_permissions">query_all_key_permissions</a>(string, string)<br/>
This method returns all the permision types associated with the key.
<li><a href="#query_all_keys">query_all_keys</a>(string)<br/>
This method returns all the keys in the current group.
<li><a href="#query_key_name">query_key_name</a>(string, string)<br/>
This method returns the key name for a given key.
<li><a href="#query_key_permission">query_key_permission</a>(string, string, string)<br/>
This method will see if the given key perrmision exists for this
key in this particular group and key.
<li><a href="#remove_key_permission">remove_key_permission</a>(string, string, string)<br/>
This method removes a specific permission type from the given
key group and key.
<li><a href="#set_key_name">set_key_name</a>(string, string, string)<br/>
This method sets the name of the specified key.
<li><a href="#set_key_permissions">set_key_permissions</a>(string, string, string *)<br/>
This method will set the key permissions for a certain sort of
key.
</ul>
<h2>Public Functions</h2>
These are functions that everyone can access.<p>
<dl>
<dt class="autodocfuncname"><a name="add_key_permission">
add_key_permission</a><pre class="autodocfuncdef">
int add_key_permission(string group,
                       string key,
                       string type)
</pre><dd><br />
This method adds in a specific permission type into the current
permission set for this key.<br />
<br /><dl>
<dd><b>Parameters:</b><br />
group - the key group to add the permision to<br />
key - the key to add the permission for<br />
type - the permission type to add in<br />
<br />
<dd><b>Returns:</b>
<br />0 if it is already added, 1 if not<br /><br />
<dd><b>See also:</b>
<br /><a href="#remove_key_permission">remove_key_permission()</a>, <a href="#query_key_permission">query_key_permission()</a>, <a href="#set_key_permissions">set_key_permissions()</a>, <a href="#query_all_key_permissions">query_all_key_permissions()</a> and <a href="#query_all_keys">query_all_keys()
</a><br /><br /><br /></dl>

<dt class="autodocfuncname"><a name="delete_key_name">
delete_key_name</a><pre class="autodocfuncdef">
void delete_key_name(string group,
                     string key)
</pre><dd><br />
This method removes a specified key name from the current key name
mapping.<br />
<br /><dl>
<dd><b>Parameters:</b><br />
group - the group to remove the key from<br />
key - the key type to remove the name of<br />
<br />
<dd><b>See also:</b>
<br /><a href="#set_key_name">set_key_name()</a>, <a href="#query_key_name">query_key_name()</a> and <a href="#query_all_key_names">query_all_key_names()
</a><br /><br /><br /></dl>

<dt class="autodocfuncname"><a name="query_all_key_names">
query_all_key_names</a><pre class="autodocfuncdef">
mapping query_all_key_names(string group)
</pre><dd><br />
This method returns all the key names for the given key group.
The index of the mapping is the key type and the value is its name.<br />
<br /><dl>
<dd><b>Parameters:</b><br />
group - the key group<br />
<br />
<dd><b>Returns:</b>
<br />the mapping containing the key names<br /><br />
<dd><b>See also:</b>
<br /><a href="#delete_key_name">delete_key_name()</a>, <a href="#set_key_name">set_key_name()</a> and <a href="#query_key_name">query_key_name()
</a><br /><br /><br /></dl>

<dt class="autodocfuncname"><a name="query_all_key_permissions">
query_all_key_permissions</a><pre class="autodocfuncdef">
string * query_all_key_permissions(string group,
                                   string key)
</pre><dd><br />
This method returns all the permision types associated with the key.
The permission types are an array of string permision type names.  If
the key name is non-existant an empty array will be returned.<br />
<br /><dl>
<dd><b>Parameters:</b><br />
group - the key group to lookup<br />
key - the key name to lookup<br />
<br />
<dd><b>Returns:</b>
<br />the array of permission types<br /><br />
<dd><b>See also:</b>
<br /><a href="#remove_key_permission">remove_key_permission()</a>, <a href="#add_key_permission">add_key_permission()</a>, <a href="#query_key_permission">query_key_permission()</a>, <a href="#set_key_permissions">set_key_permissions()</a> and <a href="#query_all_keys">query_all_keys()
</a><br /><br /><br /></dl>

<dt class="autodocfuncname"><a name="query_all_keys">
query_all_keys</a><pre class="autodocfuncdef">
mapping query_all_keys(string group)
</pre><dd><br />
This method returns all the keys in the current group.  The mapping
consists has an index of the key name and a value of an array of
key permission types.<br />
<br /><dl>
<dd><b>Parameters:</b><br />
group - the key group to get permissions for<br />
<br />
<dd><b>Returns:</b>
<br />a mapping containing all the permissions<br /><br />
<dd><b>See also:</b>
<br /><a href="#remove_key_permission">remove_key_permission()</a>, <a href="#add_key_permission">add_key_permission()</a>, <a href="#query_key_permission">query_key_permission()</a>, <a href="#set_key_permissions">set_key_permissions()</a> and <a href="#query_all_key_permissions">query_all_key_permissions()
</a><br /><br /><br /></dl>

<dt class="autodocfuncname"><a name="query_key_name">
query_key_name</a><pre class="autodocfuncdef">
string query_key_name(string group,
                      string key)
</pre><dd><br />
This method returns the key name for a given key.<br />
<br /><dl>
<dd><b>Parameters:</b><br />
group - the key group to lookup<br />
key - the key type to look up<br />
<br />
<dd><b>Returns:</b>
<br />the key's name<br /><br />
<dd><b>See also:</b>
<br /><a href="#delete_key_name">delete_key_name()</a>, <a href="#set_key_name">set_key_name()</a> and <a href="#query_all_key_names">query_all_key_names()
</a><br /><br /><br /></dl>

<dt class="autodocfuncname"><a name="query_key_permission">
query_key_permission</a><pre class="autodocfuncdef">
int query_key_permission(string group,
                         string key,
                         string type)
</pre><dd><br />
This method will see if the given key perrmision exists for this
key in this particular group and key.<br />
<br /><dl>
<dd><b>Parameters:</b><br />
group - the key group to look up in<br />
key - the key to check<br />
type - the permission type to see if it exists<br />
<br />
<dd><b>Returns:</b>
<br />1 if the permission exists, 0 if not<br /><br />
<dd><b>See also:</b>
<br /><a href="#remove_key_permission">remove_key_permission()</a>, <a href="#add_key_permission">add_key_permission()</a>, <a href="#set_key_permissions">set_key_permissions()</a>, <a href="#query_all_key_permissions">query_all_key_permissions()</a> and <a href="#query_all_keys">query_all_keys()
</a><br /><br /><br /></dl>

<dt class="autodocfuncname"><a name="remove_key_permission">
remove_key_permission</a><pre class="autodocfuncdef">
int remove_key_permission(string group,
                          string key,
                          string type)
</pre><dd><br />
This method removes a specific permission type from the given
key group and key.<br />
<br /><dl>
<dd><b>Parameters:</b><br />
group - the key group to remove the key from<br />
key - the key to remove the permission from<br />
type - the type of permission to remove<br />
<br />
<dd><b>Returns:</b>
<br />0 if the permission was not remove, 1 if it was<br /><br />
<dd><b>See also:</b>
<br /><a href="#add_key_permission">add_key_permission()</a>, <a href="#query_key_permission">query_key_permission()</a>, <a href="#set_key_permissions">set_key_permissions()</a>, <a href="#query_all_key_permissions">query_all_key_permissions()</a> and <a href="#query_all_keys">query_all_keys()
</a><br /><br /><br /></dl>

<dt class="autodocfuncname"><a name="set_key_name">
set_key_name</a><pre class="autodocfuncdef">
void set_key_name(string group,
                  string key,
                  string name)
</pre><dd><br />
This method sets the name of the specified key.<br />
<br /><dl>
<dd><b>Parameters:</b><br />
group - the group to set the name of the key in<br />
key - the type of key to set the name for<br />
name - the name of the key to set<br />
<br />
<dd><b>See also:</b>
<br /><a href="#delete_key_name">delete_key_name()</a>, <a href="#query_key_name">query_key_name()</a> and <a href="#query_all_key_names">query_all_key_names()
</a><br /><br /><br /></dl>

<dt class="autodocfuncname"><a name="set_key_permissions">
set_key_permissions</a><pre class="autodocfuncdef">
void set_key_permissions(string group,
                         string key,
                         string * types)
</pre><dd><br />
This method will set the key permissions for a certain sort of
key.  It will overwrite any current possible key permission sets.<br />
<br /><dl>
<dd><b>Parameters:</b><br />
group - the key group to set the permissions for<br />
key - the key to set the permission for<br />
types - the new set of permission types<br />
<br />
<dd><b>See also:</b>
<br /><a href="#remove_key_permission">remove_key_permission()</a>, <a href="#add_key_permission">add_key_permission()</a>, <a href="#query_key_permission">query_key_permission()</a>, <a href="#query_all_key_permissions">query_all_key_permissions()</a> and <a href="#query_all_keys">query_all_keys()
</a><br /><br /><br /></dl>

</dl>
[an error occurred while processing this directive]

