Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "RAP/AdapterRegistry"

< RAP
(Overview)
(Replacing page with 'please delete this page')
 
Line 1: Line 1:
= Overview =
+
please delete this page
 
+
The <code>rwt.protocol.AdapterRegistry</code> object stores all protocol adapters known to the client. For all types of targets used in a [[RAP/Protocol#Protocol_Format|RAP protocol message]] a matching protocol adapter is required. It is used to translate the API of the [[RAP/WebClient#Communication|'virtual' protocol object]] to the API of the actual client object. If a message contains a [[RAP/Protocol#Create|create operation]] for an unkown type (no matching adapter registered), the client will crash.
+
 
+
''Note: The follwing describes only the API required to write additional widgets. Any undocumented functions and features should '''never''' be used outside the web client core.''
+
 
+
{| align="left" width="100%" height="73" cellspacing="0" cellpadding="3" border="1" style="margin: auto auto 1em auto;"
+
|-
+
! colspan = "2" bgcolor="#CCCCFF" style = "font-family:serif;font-size:16pt" | <b>Function Summary</b>
+
|- valign="top"
+
| align="right"| <code>undefined</code>
+
| <code><b>add( string key, Adapter adapter )</b></code><br> stores the given adapter. The key has to match the type string used in a RAP protocol [[RAP/Protocol#Create|create operation]].
+
|}
+
 
+
= Adapter API =
+
 
+
An adapter is a plain JavaScript object that has to implement a specific API. Some of it is optional, as the processer will fall back on a default behavior when missing. However, that default behavior has to be supported by the actual client object. The adapter is not validated on registration. If a required field is missing or has the wrong type,
+
the client will crash when the adapter is used by the message processor.
+
 
+
 
+
{| align="left" width="100%" height="73" cellspacing="0" cellpadding="3" border="1" style="margin: auto auto 1em auto;"
+
|-
+
! colspan = "4" bgcolor="#CCCCFF" style = "font-family:serif;font-size:16pt" | <b>Protocol Adapter Fields</b>
+
|-
+
! <b>Name</b>
+
! <b>Format</b>
+
! <b>Description</b>
+
! <b>Required?</b>
+
|- valign="top"
+
| <code>factory</code>
+
| <code>Function</code>
+
| TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC
+
| for all create operations
+
|- valign="top"
+
| <code>destructor</code>
+
| <code>Function</code>
+
| TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC
+
| optional
+
|- valign="top"
+
| <code>properties</code>
+
| <code>[ string * ]</code>
+
| TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC
+
| for all set operations
+
|- valign="top"
+
| <code>propertyHandler</code>
+
| <code>{ string : function * }</code>
+
| TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC
+
| optional
+
|- valign="top"
+
| <code>listener</code>
+
| <code>[ string * ]</code>
+
| TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC
+
| for all listen operations
+
|- valign="top"
+
| <code>listenerHandler</code>
+
| <code>{ string : function * }</code>
+
| TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC
+
| optional
+
|- valign="top"
+
| <code>methods</code>
+
| <code>[ string * ]</code>
+
| TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC
+
| for all call operations
+
|- valign="top"
+
| <code>methodHandler</code>
+
| <code>{ string : function * }</code>
+
| TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC TODOC
+
| optional
+
|}
+

Latest revision as of 06:03, 19 December 2012

please delete this page

Back to the top