Class OptimizingFactory<P extends SoftwareConfigurationProblem<V>,​T,​C extends EvaluatedSoftwareConfigurationSolution<V>,​V extends java.lang.Comparable<V>>

  • All Implemented Interfaces:
    ai.libs.jaicore.basic.algorithm.IAlgorithm<OptimizingFactoryProblem<P,​T,​V>,​T>, ai.libs.jaicore.basic.Cancelable, ai.libs.jaicore.basic.ILoggingCustomizable, java.lang.Iterable<ai.libs.jaicore.basic.algorithm.events.AlgorithmEvent>, java.util.concurrent.Callable<T>, java.util.Iterator<ai.libs.jaicore.basic.algorithm.events.AlgorithmEvent>

    public class OptimizingFactory<P extends SoftwareConfigurationProblem<V>,​T,​C extends EvaluatedSoftwareConfigurationSolution<V>,​V extends java.lang.Comparable<V>>
    extends ai.libs.jaicore.basic.algorithm.AAlgorithm<OptimizingFactoryProblem<P,​T,​V>,​T>
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      T call()  
      void cancel()  
      ComponentInstance getComponentInstanceOfObject()  
      java.lang.String getLoggerName()  
      SoftwareConfigurationAlgorithm<P,​C,​V> getOptimizer()  
      V getPerformanceOfObject()  
      ai.libs.jaicore.basic.algorithm.events.AlgorithmInitializedEvent init()  
      ai.libs.jaicore.basic.algorithm.events.AlgorithmEvent nextWithException()  
      void setLoggerName​(java.lang.String name)  
      java.lang.String toString()  
      • Methods inherited from class ai.libs.jaicore.basic.algorithm.AAlgorithm

        activate, announceTimeoutDetected, avoidReinterruptionOnShutdownOnCurrentThread, checkAndConductTermination, checkTermination, computeTimeoutAware, getActivationTime, getConfig, getId, getInput, getNumCPUs, getRemainingTimeToDeadline, getState, getTimeout, getTimeoutPrecautionOffset, hasNext, hasThreadBeenInterruptedDuringShutdown, interruptThreadAsPartOfShutdown, isCanceled, isShutdownInitialized, isStopCriterionSatisfied, isTimeouted, iterator, next, post, registerActiveThread, registerListener, resolveShutdownInterruptOnCurrentThread, setConfig, setMaxNumThreads, setNumCPUs, setState, setTimeout, setTimeout, setTimeoutPrecautionOffset, shutdown, terminate, unregisterActiveThread, unregisterThreadAndShutdown
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.lang.Iterable

        forEach, spliterator
      • Methods inherited from interface java.util.Iterator

        forEachRemaining, remove
    • Method Detail

      • nextWithException

        public ai.libs.jaicore.basic.algorithm.events.AlgorithmEvent nextWithException()
                                                                                throws ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmException,
                                                                                       java.lang.InterruptedException,
                                                                                       ai.libs.jaicore.basic.algorithm.AlgorithmExecutionCanceledException,
                                                                                       ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmTimeoutedException
        Throws:
        ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmException
        java.lang.InterruptedException
        ai.libs.jaicore.basic.algorithm.AlgorithmExecutionCanceledException
        ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmTimeoutedException
      • call

        public T call()
               throws ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmException,
                      java.lang.InterruptedException,
                      ai.libs.jaicore.basic.algorithm.AlgorithmExecutionCanceledException,
                      ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmTimeoutedException
        Throws:
        ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmException
        java.lang.InterruptedException
        ai.libs.jaicore.basic.algorithm.AlgorithmExecutionCanceledException
        ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmTimeoutedException
      • init

        public ai.libs.jaicore.basic.algorithm.events.AlgorithmInitializedEvent init()
      • getPerformanceOfObject

        public V getPerformanceOfObject()
      • getComponentInstanceOfObject

        public ComponentInstance getComponentInstanceOfObject()
      • getLoggerName

        public java.lang.String getLoggerName()
        Specified by:
        getLoggerName in interface ai.libs.jaicore.basic.ILoggingCustomizable
        Overrides:
        getLoggerName in class ai.libs.jaicore.basic.algorithm.AAlgorithm<OptimizingFactoryProblem<P extends SoftwareConfigurationProblem<V>,​T,​V extends java.lang.Comparable<V>>,​T>
      • setLoggerName

        public void setLoggerName​(java.lang.String name)
        Specified by:
        setLoggerName in interface ai.libs.jaicore.basic.ILoggingCustomizable
        Overrides:
        setLoggerName in class ai.libs.jaicore.basic.algorithm.AAlgorithm<OptimizingFactoryProblem<P extends SoftwareConfigurationProblem<V>,​T,​V extends java.lang.Comparable<V>>,​T>
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object