OpenSim::ApplicationPlugins::Rest::RestPlugin Class Reference

Inheritance diagram for OpenSim::ApplicationPlugins::Rest::RestPlugin:

OpenSim::IApplicationPlugin OpenSim::Framework::IPlugin OpenSim::ApplicationPlugins::Rest::Inventory::RestHandler OpenSim::ApplicationPlugins::Rest::Regions::RestRegionPlugin OpenSim::ApplicationPlugins::Rest::Regions::RestRegionPlugin OpenSim::ApplicationPlugins::Rest::Regions::RestRegionPlugin List of all members.

Public Member Functions

void Initialise ()
 Default-initialises the plugin.
virtual void Initialise (OpenSimBase openSim)
 This method is called by OpenSimMain immediately after loading the plugin and after basic server setup, but before running any server commands.
virtual void AddRestStreamHandler (string httpMethod, string path, RestMethod method)
 Add a REST stream handler to the underlying HTTP server.
bool AddAgentHandler (string agentName, IHttpAgentHandler handler)
 Add a powerful Agent handler to the underlying HTTP server.
bool RemoveAgentHandler (string agentName, IHttpAgentHandler handler)
 Remove a powerful Agent handler from the underlying HTTP server.
virtual void Close ()
 Clean up and remove all handlers that were added earlier.
virtual void Dispose ()
string Failure (OSHttpResponse response, OSHttpStatusCode status, string method, Exception e)
 Return a failure message.

Protected Member Functions

bool IsGod (OSHttpRequest request)
 Check whether the HTTP request came from god; that is, is the god_key as configured in the config section supplied via X-OpenSim-Godkey?
bool IsVerifiedUser (OSHttpRequest request, UUID uuid)
 Checks wether the X-OpenSim-Password value provided in the HTTP header is indeed the password on file for the avatar specified by the UUID.
string Failure (OSHttpResponse response, OSHttpStatusCode status, string method, string format, params string[] msg)
 Return a failure message.

Static Protected Attributes

static readonly log4net.ILog m_log

Properties

string RequestID [get, set]
 Return an ever increasing request ID for logging.
string MsgID [get, set]
 Thread-constant message IDs for logging.
bool PluginsAreEnabled [get]
 Returns true if Rest Plugins are enabled.
bool IsEnabled [get]
 Returns true if specific Rest Plugin is enabled.
OpenSimBase App [get]
 OpenSimMain application.
BaseHttpServer HttpServer [get]
 RPC server.
string Prefix [get]
 URL prefix to use for all REST handlers.
string GodKey [get]
 Access to GOD password string.
IConfig Config [get]
 Configuration of the plugin.
abstract string Name [get]
 Name of the plugin.
abstract string ConfigName [get]
 Return the config section name.
XmlTextWriter XmlWriter [get]
string XmlWriterResult [get]
string Version [get]
 Returns the plugin version.

Member Function Documentation

void OpenSim::ApplicationPlugins::Rest::RestPlugin::Initialise (  )  [inline]

Default-initialises the plugin.

Implements OpenSim::Framework::IPlugin.

virtual void OpenSim::ApplicationPlugins::Rest::RestPlugin::Initialise ( OpenSimBase  openSim  )  [inline, virtual]

This method is called by OpenSimMain immediately after loading the plugin and after basic server setup, but before running any server commands.

Note that entries MUST be added to the active configuration files before the plugin can be enabled.

Implements OpenSim::IApplicationPlugin.

Reimplemented in OpenSim::ApplicationPlugins::Rest::Inventory::RestHandler, and OpenSim::ApplicationPlugins::Rest::Regions::RestRegionPlugin.

virtual void OpenSim::ApplicationPlugins::Rest::RestPlugin::AddRestStreamHandler ( string  httpMethod,
string  path,
RestMethod  method 
) [inline, virtual]

Add a REST stream handler to the underlying HTTP server.

Parameters:
httpMethod GET/PUT/POST/DELETE or similar
path URL prefix
method RestMethod handler doing the actual work

bool OpenSim::ApplicationPlugins::Rest::RestPlugin::AddAgentHandler ( string  agentName,
IHttpAgentHandler  handler 
) [inline]

Add a powerful Agent handler to the underlying HTTP server.

Parameters:
agentName name of agent handler
handler agent handler method
Returns:
false when the plugin is disabled or the agent handler could not be added. Any generated exceptions are allowed to drop through to the caller, i.e. ArgumentException.

bool OpenSim::ApplicationPlugins::Rest::RestPlugin::RemoveAgentHandler ( string  agentName,
IHttpAgentHandler  handler 
) [inline]

Remove a powerful Agent handler from the underlying HTTP server.

Parameters:
agentName name of agent handler
handler agent handler method
Returns:
false when the plugin is disabled or the agent handler could not be removed. Any generated exceptions are allowed to drop through to the caller, i.e. KeyNotFound.

bool OpenSim::ApplicationPlugins::Rest::RestPlugin::IsGod ( OSHttpRequest  request  )  [inline, protected]

Check whether the HTTP request came from god; that is, is the god_key as configured in the config section supplied via X-OpenSim-Godkey?

Parameters:
request HTTP request header
Returns:
true when the HTTP request came from god.

bool OpenSim::ApplicationPlugins::Rest::RestPlugin::IsVerifiedUser ( OSHttpRequest  request,
UUID  uuid 
) [inline, protected]

Checks wether the X-OpenSim-Password value provided in the HTTP header is indeed the password on file for the avatar specified by the UUID.

virtual void OpenSim::ApplicationPlugins::Rest::RestPlugin::Close (  )  [inline, virtual]

Clean up and remove all handlers that were added earlier.

Reimplemented in OpenSim::ApplicationPlugins::Rest::Inventory::RestHandler, and OpenSim::ApplicationPlugins::Rest::Regions::RestRegionPlugin.

virtual void OpenSim::ApplicationPlugins::Rest::RestPlugin::Dispose (  )  [inline, virtual]

string OpenSim::ApplicationPlugins::Rest::RestPlugin::Failure ( OSHttpResponse  response,
OSHttpStatusCode  status,
string  method,
string  format,
params string[]  msg 
) [inline, protected]

Return a failure message.

Parameters:
method origin of the failure message
message failure message
This should probably set a return code as well. (?)

string OpenSim::ApplicationPlugins::Rest::RestPlugin::Failure ( OSHttpResponse  response,
OSHttpStatusCode  status,
string  method,
Exception  e 
) [inline]

Return a failure message.

Parameters:
method origin of the failure message
e exception causing the failure message
This should probably set a return code as well. (?)


Member Data Documentation

readonly log4net.ILog OpenSim::ApplicationPlugins::Rest::RestPlugin::m_log [static, protected]

Initial value:

            log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType)


Property Documentation

string OpenSim::ApplicationPlugins::Rest::RestPlugin::RequestID [get, set, protected]

Return an ever increasing request ID for logging.

string OpenSim::ApplicationPlugins::Rest::RestPlugin::MsgID [get, set, protected]

Thread-constant message IDs for logging.

bool OpenSim::ApplicationPlugins::Rest::RestPlugin::PluginsAreEnabled [get]

Returns true if Rest Plugins are enabled.

bool OpenSim::ApplicationPlugins::Rest::RestPlugin::IsEnabled [get]

Returns true if specific Rest Plugin is enabled.

OpenSimBase OpenSim::ApplicationPlugins::Rest::RestPlugin::App [get]

OpenSimMain application.

BaseHttpServer OpenSim::ApplicationPlugins::Rest::RestPlugin::HttpServer [get]

RPC server.

string OpenSim::ApplicationPlugins::Rest::RestPlugin::Prefix [get]

URL prefix to use for all REST handlers.

string OpenSim::ApplicationPlugins::Rest::RestPlugin::GodKey [get, protected]

Access to GOD password string.

IConfig OpenSim::ApplicationPlugins::Rest::RestPlugin::Config [get]

Configuration of the plugin.

abstract string OpenSim::ApplicationPlugins::Rest::RestPlugin::Name [get]

Name of the plugin.

Implements OpenSim::Framework::IPlugin.

Reimplemented in OpenSim::ApplicationPlugins::Rest::Inventory::RestHandler, and OpenSim::ApplicationPlugins::Rest::Regions::RestRegionPlugin.

abstract string OpenSim::ApplicationPlugins::Rest::RestPlugin::ConfigName [get]

Return the config section name.

Reimplemented in OpenSim::ApplicationPlugins::Rest::Inventory::RestHandler, and OpenSim::ApplicationPlugins::Rest::Regions::RestRegionPlugin.

XmlTextWriter OpenSim::ApplicationPlugins::Rest::RestPlugin::XmlWriter [get]

string OpenSim::ApplicationPlugins::Rest::RestPlugin::XmlWriterResult [get]

string OpenSim::ApplicationPlugins::Rest::RestPlugin::Version [get]

Returns the plugin version.

Returns:
Plugin version in MAJOR.MINOR.REVISION.BUILD format

Implements OpenSim::Framework::IPlugin.


The documentation for this class was generated from the following file:
Generated on Tue Jan 6 01:00:46 2009 for OpenSim by  doxygen 1.5.1