public void AddFeature(Feature feature)
        {
            if (feature == null) throw new ArgumentNullException("feature");

            if (!_features.Contains(feature))
            {
                _features.Add(feature);
                if (this.FeatureAdded != null)
                    this.FeatureAdded(this, new FeatureAddedEventArgs(feature));
            }
        }
 public FeatureAddedEventArgs(Feature newFeature)
 {
     this.NewFeature = newFeature;
 }
 public bool ContainsFeature(Feature feature)
 {
     if (feature == null)
         throw new ArgumentNullException("feature");
     return _features.Contains(feature);
 }