Class DynamicScoringPreferenceAggregator<T>

    • Field Detail

      • v

        private WeightVector v
        The weight vector for the aggregator given via the constructor
      • _listeners

        private java.util.ArrayList<UpdateListener<T>> _listeners
        The list containing the update listeners
    • Constructor Detail

      • DynamicScoringPreferenceAggregator

        public DynamicScoringPreferenceAggregator​(WeightVector v)
        Constructor with given weight vector
        Parameters:
        v - the weight vector
    • Method Detail

      • aggregate

        public PreferenceOrder<T> aggregate​(java.util.List<PreferenceOrder<T>> input)
        This method aggregates the given preference orders according to the WeightVector used within construction
        Specified by:
        aggregate in interface DynamicPreferenceAggregator<T>
        Parameters:
        input - the array of preference orders to be aggregated
        Returns:
        the final result as a preference order
      • update

        public PreferenceOrder<T> update​(Update<T> update,
                                         java.util.List<PreferenceOrder<T>> input)
                                  throws java.lang.IndexOutOfBoundsException,
                                         java.lang.NullPointerException
        The update-method for dynamically changing the input for preference aggregation
        Specified by:
        update in interface DynamicPreferenceAggregator<T>
        Parameters:
        update - the update element containing the changes to be applied
        input - some input
        Returns:
        a preference order
        Throws:
        java.lang.IndexOutOfBoundsException
        java.lang.NullPointerException
      • update

        public PreferenceOrder<T> update​(UpdateStream<T> stream,
                                         java.util.List<PreferenceOrder<T>> input)
        this method extends the update-functionality with input-streams consisting of Update-elements
        Parameters:
        stream - the input stream with the Update-elements
        input - some input
        Returns:
        the newly aggregated preference order after all updates are applied
      • fireEvent

        private void fireEvent​(UpdateEvent<T> event)
        Fires an event every time a change occurred
        Parameters:
        event - the update event