mirror of
https://github.com/Kingsrook/qqq.git
synced 2025-07-18 05:01:07 +00:00
Add option to specify Comparator, for custom sorting of options [skip ci]
This commit is contained in:
@ -23,6 +23,7 @@ package com.kingsrook.qqq.backend.core.model.common;
|
|||||||
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Comparator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.TimeZone;
|
import java.util.TimeZone;
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
@ -47,7 +48,7 @@ public class TimeZonePossibleValueSourceMetaDataProvider
|
|||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
public QPossibleValueSource produce()
|
public QPossibleValueSource produce()
|
||||||
{
|
{
|
||||||
return (produce(null, null));
|
return (produce(null, null, null));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -56,6 +57,16 @@ public class TimeZonePossibleValueSourceMetaDataProvider
|
|||||||
**
|
**
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
public QPossibleValueSource produce(Predicate<String> filter, Function<String, String> labelMapper)
|
public QPossibleValueSource produce(Predicate<String> filter, Function<String, String> labelMapper)
|
||||||
|
{
|
||||||
|
return (produce(filter, labelMapper, null));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*******************************************************************************
|
||||||
|
**
|
||||||
|
*******************************************************************************/
|
||||||
|
public QPossibleValueSource produce(Predicate<String> filter, Function<String, String> labelMapper, Comparator<QPossibleValue<?>> comparator)
|
||||||
{
|
{
|
||||||
QPossibleValueSource possibleValueSource = new QPossibleValueSource()
|
QPossibleValueSource possibleValueSource = new QPossibleValueSource()
|
||||||
.withName("timeZones")
|
.withName("timeZones")
|
||||||
@ -72,6 +83,11 @@ public class TimeZonePossibleValueSourceMetaDataProvider
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(comparator != null)
|
||||||
|
{
|
||||||
|
enumValues.sort(comparator);
|
||||||
|
}
|
||||||
|
|
||||||
possibleValueSource.withEnumValues(enumValues);
|
possibleValueSource.withEnumValues(enumValues);
|
||||||
return (possibleValueSource);
|
return (possibleValueSource);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user