code: function(features, options) {
          if (!(OpenLayers.Util.isArray(features))) {
              features = [features];
          }
          
          var notify = !options || !options.silent;
          if(notify) {
              var event = {features: features};
              var ret = this.events.triggerEvent("beforefeaturesadded", event);
              if(ret === false) {
                  return;
              }
              features = event.features;
          }
          
          // Track successfully added features for featuresadded event, since
          // beforefeatureadded can veto single features.
          var featuresAdded = [];
          for (var i=0, len=features.length; i<len; i++) {
              if (i != (features.length - 1)) {
                  this.renderer.locked = true;
              } else {
                  this.renderer.locked = false;
              }    
              var feature = features[i];
              
              if (this.geometryType &&
                !(feature.geometry instanceof this.geometryType)) {
                  throw new TypeError('addFeatures: component should be an ' +
                                      this.geometryType.prototype.CLASS_NAME);
                }
  
              //give feature reference to its layer
              feature.layer = this;
  
              if (!feature.style && this.style) {
                  feature.style = OpenLayers.Util.extend({}, this.style);
              }
  
              if (notify) {
                  if(this.events.triggerEvent("beforefeatureadded",
                                              {feature: feature}) === false) {
                      continue;
                  }
                  this.preFeatureInsert(feature);
              }
  
              featuresAdded.push(feature);
              this.features.push(feature);
              this.drawFeature(feature);
              
              if (notify) {
                  this.events.triggerEvent("featureadded", {
                      feature: feature
                  });
                  this.onFeatureInsert(feature);
              }
          }
          
          if(notify) {
              this.events.triggerEvent("featuresadded", {features: featuresAdded});
          }
      }
docs: APIMethod: addFeatures
  Add Features to the layer.
  
  Parameters:
  features - {Array(<OpenLayers.Feature.Vector>)}
  options - {Object}