bzrmirror%bugzilla.org 0bb19b0db2 Bug 1141440: OPTION response for CORS requests to REST doesn't allow X-Bugzilla headers
- Fixed a new hash constant error that did not fail locally due to Perl version difference


git-svn-id: svn://10.0.0.236/trunk@265859 18797224-902f-48f8-a5cc-f745e15eee43
2015-03-11 18:15:55 +00:00
..

The class structure of these files is a little strange, and this README
explains it.

Our goal is to make JSON::RPC and XMLRPC::Lite both work with the same code.
(That is, we want to have one WebService API, and have two frontends for it.)

The problem is that these both pass different things for $self to WebService
methods.

When XMLRPC::Lite calls a method, $self is the name of the *class* the 
method is in. For example, if we call Bugzilla.version(), the first argument
is Bugzilla::WebService::Bugzilla. So in order to have $self
(our first argument) act correctly in XML-RPC, we make all WebService
classes use parent qw(Bugzilla::WebService). 

When JSON::RPC calls a method, $self is the JSON-RPC *server object*. In other
words, it's an instance of Bugzilla::WebService::Server::JSONRPC. So we have
Bugzilla::WebService::Server::JSONRPC inherit from Bugzilla::WebService.