generic MCP package #354
Aliases: generic MCP package, package
9 verbs · 14 properties · 1 children
Verbs
| Verb | Spec | Flags | Definer | Lines |
|---|---|---|---|---|
set_version_range | this none this | rx | #354 | 7 |
dispatch | this none this | rxd | #354 | 7 |
match_request | this none this | rxd | #354 | 9 |
initialize_connection | this none this | rxd | #354 | 6 |
message_name_to_verbname | this none this | rxd | #354 | 6 |
finalize_connection | this none this | rxd | #354 | 2 |
add_cord_type | this none this | rxd | #354 | 8 |
remove_cord_type | this none this | rxd | #354 | 8 |
send_* | this none this | rxd | #354 | 7 |
Properties
| Property | Definer | Flags | Owner | Value |
|---|---|---|---|---|
version_range | #354 | r | #29 | {"1.0", "1.0"} |
cord_types | #354 | r | #29 | {} |
messages_in | #355 | r | #29 | <clear> |
messages_out | #355 | r | #29 | <clear> |
aliases | #1 | rc | #29 | {"generic MCP package", "package"} |
description | #1 | rc | #29 | <clear> |
object_size | #1 | r | #29 | {4675, 1298434532} |
hidden_verbs | #1 | rc | #29 | <clear> |
phelp_msg | #1 | rc | #29 | <clear> |
weight | #1 | rc | #29 | <clear> |
owner_verbs | #1 | rc | #29 | <clear> |
plural_name | #1 | rc | #29 | <clear> |
client_image | #1 | rc | #29 | <clear> |
listening | #1 | rc | #29 | <clear> |
Ancestry
Ancestors (nearest first): #355 generic message dispatch object → #1 root
Children: #302 mcp-cord
Call graph
Source
set_version_range
Referenced by
none
Source
1"This is the standard :set_foo verb. It allows the property to be set if called by this or called with adequate permissions (this's owner or wizardly)."; 2if ((caller == this) || $perm_utils:controls(caller_perms(), this)) 3return this.(verb[5..length(verb)]) = args[1]; 4else 5return E_PERM; 6endif 7"version: 1.0 Fox Wed Jul 5 17:58:13 1995 EDT";
dispatch
Referenced by
none
Source
1"Usage: :dispatch_request(who, authkey, name, arguments)"; 2connection = caller; 3{message, alist} = args; 4if (verbname = this:message_name_to_verbname(message)) 5set_task_perms(caller_perms()); 6this:(verbname)(connection, @this:parse_receive_args(message, alist)); 7endif
match_request
Referenced by
none
Source
1"Usage: :match_request(request)"; 2""; 3request = args[1]; 4if ($object_utils:has_verb(this, verbname = "mcp_" + request)) 5return verbname; 6else 7return 0; 8endif 9"version: 1.0 Fox Wed Jul 5 17:58:14 1995 EDT";
initialize_connection
Referenced by
none
Source
1"Usage: :initialize_connection()"; 2""; 3{version} = args; 4connection = caller; 5messages = $list_utils:slice(this.messages_in); 6connection:register_handlers(messages);
message_name_to_verbname
Referenced by
- #354:dispatch line 4:
this:message_name_to_verbname
Source
1{message} = args; 2if (has_callable_verb(this, vname = "handle_" + message)) 3return vname; 4else 5return 0; 6endif
finalize_connection
Referenced by
none
Source
1connection = caller; 2return 0;
add_cord_type
Referenced by
none
Source
1"Usage: :add_cord_type(cord_type)"; 2""; 3{cord_type} = args; 4if ((caller == this) || $perm_utils:controls(caller_perms(), this)) 5return this.cord_types = setadd(this.cord_types, cord_type); 6else 7raise(E_PERM); 8endif
remove_cord_type
Referenced by
none
Source
1"Usage: :remove_cord_type(cord_type)"; 2""; 3{cord_type} = args; 4if ((caller == this) || $perm_utils:controls(caller_perms(), this)) 5return this.cord_types = setremove(this.cord_types, cord_type); 6else 7raise(E_PERM); 8endif
send_*
Referenced by
none
Source
1{connection, @args} = args; 2if (caller == this) 3message = verb[6..$]; 4`connection:send(message, this:parse_send_args(message, @args)) ! E_VERBNF'; 5else 6raise(E_PERM); 7endif