|
@@ -63,13 +63,15 @@ type FitPredicateFactory func(PluginFactoryArgs) predicates.FitPredicate
|
|
// DEPRECATED
|
|
// DEPRECATED
|
|
// Use Map-Reduce pattern for priority functions.
|
|
// Use Map-Reduce pattern for priority functions.
|
|
type PriorityFunctionFactory func(PluginFactoryArgs) priorities.PriorityFunction
|
|
type PriorityFunctionFactory func(PluginFactoryArgs) priorities.PriorityFunction
|
|
-type CustomPriorityFunctionFactory func(PluginFactoryArgs) priorities.CustomPriorityFunction
|
|
|
|
|
|
+
|
|
|
|
+//type CustomPriorityFunctionFactory func(PluginFactoryArgs) priorities.CustomPriorityFunction
|
|
|
|
|
|
// PriorityFunctionFactory2 produces map & reduce priority functions
|
|
// PriorityFunctionFactory2 produces map & reduce priority functions
|
|
// from a given args.
|
|
// from a given args.
|
|
// FIXME: Rename to PriorityFunctionFactory.
|
|
// FIXME: Rename to PriorityFunctionFactory.
|
|
type PriorityFunctionFactory2 func(PluginFactoryArgs) (priorities.PriorityMapFunction, priorities.PriorityReduceFunction)
|
|
type PriorityFunctionFactory2 func(PluginFactoryArgs) (priorities.PriorityMapFunction, priorities.PriorityReduceFunction)
|
|
-type CustomPriorityFunctionFactory2 func(PluginFactoryArgs) (priorities.CustomPriorityMapFunction, priorities.CustomPriorityReduceFunction)
|
|
|
|
|
|
+
|
|
|
|
+//type CustomPriorityFunctionFactory2 func(PluginFactoryArgs) (priorities.CustomPriorityMapFunction, priorities.CustomPriorityReduceFunction)
|
|
|
|
|
|
// PriorityConfigFactory produces a PriorityConfig from the given function and weight
|
|
// PriorityConfigFactory produces a PriorityConfig from the given function and weight
|
|
type PriorityConfigFactory struct {
|
|
type PriorityConfigFactory struct {
|
|
@@ -78,11 +80,11 @@ type PriorityConfigFactory struct {
|
|
Weight int
|
|
Weight int
|
|
}
|
|
}
|
|
|
|
|
|
-type CustomPriorityConfigFactory struct {
|
|
|
|
- Function CustomPriorityFunctionFactory
|
|
|
|
- MapReduceFunction CustomPriorityFunctionFactory2
|
|
|
|
- Weight int
|
|
|
|
-}
|
|
|
|
|
|
+// type CustomPriorityConfigFactory struct {
|
|
|
|
+// Function CustomPriorityFunctionFactory
|
|
|
|
+// MapReduceFunction CustomPriorityFunctionFactory2
|
|
|
|
+// Weight int
|
|
|
|
+// }
|
|
|
|
|
|
var (
|
|
var (
|
|
schedulerFactoryMutex sync.RWMutex
|
|
schedulerFactoryMutex sync.RWMutex
|
|
@@ -92,7 +94,7 @@ var (
|
|
mandatoryFitPredicates = sets.NewString()
|
|
mandatoryFitPredicates = sets.NewString()
|
|
priorityFunctionMap = make(map[string]PriorityConfigFactory)
|
|
priorityFunctionMap = make(map[string]PriorityConfigFactory)
|
|
//custom
|
|
//custom
|
|
- customPriorityFunctionMap = make(map[string]CustomPriorityConfigFactory)
|
|
|
|
|
|
+ //customPriorityFunctionMap = make(map[string]CustomPriorityConfigFactory)
|
|
//custom
|
|
//custom
|
|
algorithmProviderMap = make(map[string]AlgorithmProviderConfig)
|
|
algorithmProviderMap = make(map[string]AlgorithmProviderConfig)
|
|
|
|
|
|
@@ -310,26 +312,26 @@ func RegisterPriorityFunction2(
|
|
// ---------START OF CUSTOMIZATION----------------------------------------------------------------
|
|
// ---------START OF CUSTOMIZATION----------------------------------------------------------------
|
|
//------------------------------------------------------------------------------------------------
|
|
//------------------------------------------------------------------------------------------------
|
|
//------------------------------------------------------------------------------------------------
|
|
//------------------------------------------------------------------------------------------------
|
|
-func CustomRegisterPriorityFunction2(
|
|
|
|
- name string,
|
|
|
|
- mapFunction priorities.CustomPriorityMapFunction,
|
|
|
|
- reduceFunction priorities.CustomPriorityReduceFunction,
|
|
|
|
- weight int) string {
|
|
|
|
- return CustomRegisterPriorityConfigFactory(name, CustomPriorityConfigFactory{
|
|
|
|
- MapReduceFunction: func(PluginFactoryArgs) (priorities.CustomPriorityMapFunction, priorities.CustomPriorityReduceFunction) {
|
|
|
|
- return mapFunction, reduceFunction
|
|
|
|
- },
|
|
|
|
- Weight: weight,
|
|
|
|
- })
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-func CustomRegisterPriorityConfigFactory(name string, pcf CustomPriorityConfigFactory) string {
|
|
|
|
- schedulerFactoryMutex.Lock()
|
|
|
|
- defer schedulerFactoryMutex.Unlock()
|
|
|
|
- validateAlgorithmNameOrDie(name)
|
|
|
|
- customPriorityFunctionMap[name] = pcf
|
|
|
|
- return name
|
|
|
|
-}
|
|
|
|
|
|
+// func CustomRegisterPriorityFunction2(
|
|
|
|
+// name string,
|
|
|
|
+// mapFunction priorities.CustomPriorityMapFunction,
|
|
|
|
+// reduceFunction priorities.CustomPriorityReduceFunction,
|
|
|
|
+// weight int) string {
|
|
|
|
+// return CustomRegisterPriorityConfigFactory(name, CustomPriorityConfigFactory{
|
|
|
|
+// MapReduceFunction: func(PluginFactoryArgs) (priorities.CustomPriorityMapFunction, priorities.CustomPriorityReduceFunction) {
|
|
|
|
+// return mapFunction, reduceFunction
|
|
|
|
+// },
|
|
|
|
+// Weight: weight,
|
|
|
|
+// })
|
|
|
|
+// }
|
|
|
|
+
|
|
|
|
+// func CustomRegisterPriorityConfigFactory(name string, pcf CustomPriorityConfigFactory) string {
|
|
|
|
+// schedulerFactoryMutex.Lock()
|
|
|
|
+// defer schedulerFactoryMutex.Unlock()
|
|
|
|
+// validateAlgorithmNameOrDie(name)
|
|
|
|
+// customPriorityFunctionMap[name] = pcf
|
|
|
|
+// return name
|
|
|
|
+// }
|
|
|
|
|
|
//------------------------------------------------------------------------------------------------
|
|
//------------------------------------------------------------------------------------------------
|
|
//------------------------------------------------------------------------------------------------
|
|
//------------------------------------------------------------------------------------------------
|