code: function(response, options) {
          options = OpenLayers.Util.extend({}, options);
          OpenLayers.Util.applyDefaults(options, this.options);
  
          if(options.callback) {
              var request = response.priv;
              if(request.status >= 200 && request.status < 300) {
                  // success
                  var result = this.parseResponse(request, options.readOptions);
                  if (result && result.success !== false) { 
                      if (options.readOptions && options.readOptions.output == "object") {
                          OpenLayers.Util.extend(response, result);
                      } else {
                          response.features = result;
                      }
                      response.code = OpenLayers.Protocol.Response.SUCCESS;
                  } else {
                      // failure (service exception)
                      response.code = OpenLayers.Protocol.Response.FAILURE;
                      response.error = result;
                  }
              } else {
                  // failure
                  response.code = OpenLayers.Protocol.Response.FAILURE;
              }
              options.callback.call(options.scope, response);
          }
      }
docs: Method: handleRead
  Deal with response from the read request.
  
  Parameters:
  response - {<OpenLayers.Protocol.Response>} The response object to pass
  to the user callback.
  options - {Object} The user options passed to the read call.