code: function(features, options) {
  
          options = OpenLayers.Util.extend({}, options);
          OpenLayers.Util.applyDefaults(options, this.options);
          
          var response = new OpenLayers.Protocol.Response({
              requestType: "commit",
              reqFeatures: features
          });
          response.priv = OpenLayers.Request.POST({
              url: options.url,
              headers: options.headers,
              data: this.format.write(features, options),
              callback: this.createCallback(this.handleCommit, response, options)
          });
          
          return response;
      }
docs: Method: commit
  Given a list of feature, assemble a batch request for update, create,
  and delete transactions.  A commit call on the prototype amounts
  to writing a WFS transaction - so the write method on the format
  is used.
  
  Parameters:
  features - {Array(<OpenLayers.Feature.Vector>)}
  options - {Object}
  
  Valid options properties:
  nativeElements - {Array({Object})} Array of objects with information for writing
  out <Native> elements, these objects have vendorId, safeToIgnore and
  value properties. The <Native> element is intended to allow access to
  vendor specific capabilities of any particular web feature server or
  datastore.
  
  Returns:
  {<OpenLayers.Protocol.Response>} A response object with a features
  property containing any insertIds and a priv property referencing
  the XMLHttpRequest object.