public bool GenerateNecessaryEvents(IDatasetBase aType)
        {

            if (aType is IBookingSet)
            {
                this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Customer);
                this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Payment);
                this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Booking);
                this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.BookingParticipant);
            }
            else if (aType is IBookingExtraSelectionSet)
            {
                this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Customer);
                this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Payment);
                this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.BookingExtraSelection);
                this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.BookingExtraParticipant);
            }
            else if (aType is ICustomerSet)
            {
               this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Customer);
               this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Payment);
            }
            else
            { return false; }
            //add more later?
            return true;

        }
 public bool GenerateNecessaryEvents(IDatasetBase aType)
 {
     if (aType is IBookingSet)
     {
         this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Customer);
         this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Payment);
         this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Booking);
         this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.BookingParticipant);
     }
     else if (aType is IBookingExtraSelectionSet)
     {
         this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Customer);
         this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Payment);
         this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.BookingExtraSelection);
         this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.BookingExtraParticipant);
     }
     else if (aType is ICustomerSet)
     {
         this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Customer);
         this.theEventsToComplete.Add(BookingDataCollectionEventType.Types.Payment);
     }
     else
     {
         return(false);
     }
     //add more later?
     return(true);
 }
 public EventProvider(IDatasetBase aTypeOfSetToGenerateEventsFor)
 {
     this.IsBookingComplete = false;
     this.theEventsToComplete = new List<BookingDataCollectionEventType.Types>();
     GenerateNecessaryEvents(aTypeOfSetToGenerateEventsFor);
 }
 public EventProvider(IDatasetBase aTypeOfSetToGenerateEventsFor)
 {
     this.IsBookingComplete   = false;
     this.theEventsToComplete = new List <BookingDataCollectionEventType.Types>();
     GenerateNecessaryEvents(aTypeOfSetToGenerateEventsFor);
 }