org.ofbiz.base.util
Class UtilMisc

java.lang.Object
  extended by org.ofbiz.base.util.UtilMisc

public class UtilMisc
extends java.lang.Object

UtilMisc - Misc Utility Functions


Nested Class Summary
protected static class UtilMisc.SimpleMap<V>
          This is meant to be very quick to create and use for small sized maps, perfect for how we usually use UtilMisc.toMap
protected static class UtilMisc.UtilMiscWaiter
           
 
Field Summary
static java.util.List<java.util.Locale> availableLocaleList
           
static java.lang.String module
           
static java.math.BigDecimal ZERO_BD
           
 
Constructor Summary
UtilMisc()
           
 
Method Summary
static
<K> java.math.BigDecimal
addToBigDecimalInMap(java.util.Map<K,java.lang.Object> theMap, K mapKey, java.math.BigDecimal addNumber)
          Assuming theMap not null; if null will throw a NullPointerException
static
<K> void
addToDoubleInMap(java.util.Map<K,java.lang.Object> theMap, K key, java.lang.Double value)
          Adds value to the key entry in theMap, or creates a new one if not already there
static
<K,V> void
addToListInMap(V element, java.util.Map<K,java.lang.Object> theMap, K listKey)
           
static
<K,V> void
addToSetInMap(V element, java.util.Map<K,java.util.Set<V>> theMap, K setKey)
           
static
<K,V> void
addToSortedSetInMap(V element, java.util.Map<K,java.util.Set<V>> theMap, K setKey)
           
static java.util.List<java.util.Locale> availableLocales()
          Returns a List of available locales sorted by display name
static
<T> java.util.Set<T>
collectionToSet(java.util.Collection<T> c)
           
static java.util.Locale ensureLocale(java.lang.Object localeObject)
          The input can be a String, Locale, or even null and a valid Locale will always be returned; if nothing else works, returns the default locale.
static
<K,V> java.util.List<V>
getListFromMap(java.util.Map<K,java.util.List<V>> outerMap, K key)
          Assuming outerMap not null; if null will throw a NullPointerException
static
<K,IK,V> java.util.Map<IK,V>
getMapFromMap(java.util.Map<K,java.util.Map<IK,V>> outerMap, K key)
          Assuming outerMap not null; if null will throw a NullPointerException
static
<T> java.util.List<T>
makeListWritable(java.util.Collection<? extends T> col)
           
static
<V> void
makeMapSerializable(java.util.Map<java.lang.String,V> map)
          This change a Map to be Serializable by removing all entries with values that are not Serializable.
static
<K,V> java.util.Map<K,V>
makeMapWritable(java.util.Map<K,? extends V> map)
           
static
<T> java.util.Set<T>
makeSetWritable(java.util.Collection<? extends T> col)
           
static java.util.Locale parseLocale(java.lang.String localeString)
          Parse a locale string Locale object
static
<K,V> java.lang.String
printMap(java.util.Map<? extends K,? extends V> theMap)
           
static
<T> T
removeFirst(java.util.List<T> lst)
           
static java.util.List<java.util.Map<java.lang.Object,java.lang.Object>> sortMaps(java.util.List<java.util.Map<java.lang.Object,java.lang.Object>> listOfMaps, java.util.List<? extends java.lang.String> sortKeys)
          Sort a List of Maps by specified consistent keys.
static void staticWait(long timeout)
           
static double toDouble(java.lang.Object obj)
          Converts an Object to a double.
static java.lang.Double toDoubleObject(java.lang.Object obj)
          Converts an Object to a Double.
static int toInteger(java.lang.Object obj)
          Converts an Object to an int.
static java.lang.Integer toIntegerObject(java.lang.Object obj)
          Converts an Object to an Integer.
static
<T> java.util.Iterator<T>
toIterator(java.util.Collection<T> col)
          Get an iterator from a collection, returning null if collection is null
static
<T> java.util.List<T>
toList(java.util.Collection<T> collection)
           
static
<T> java.util.List<T>
toList(T obj1)
          Create a list from passed objX parameters
static
<T> java.util.List<T>
toList(T obj1, T obj2)
          Create a list from passed objX parameters
static
<T> java.util.List<T>
toList(T obj1, T obj2, T obj3)
          Create a list from passed objX parameters
static
<T> java.util.List<T>
toList(T obj1, T obj2, T obj3, T obj4)
          Create a list from passed objX parameters
static
<T> java.util.List<T>
toList(T obj1, T obj2, T obj3, T obj4, T obj5)
          Create a list from passed objX parameters
static
<T> java.util.List<T>
toList(T obj1, T obj2, T obj3, T obj4, T obj5, T obj6)
          Create a list from passed objX parameters
static
<T> java.util.List<T>
toListArray(T[] data)
           
static long toLong(java.lang.Object obj)
          Converts an Object to a long.
static java.lang.Long toLongObject(java.lang.Object obj)
          Converts an Object to a Long.
static
<K,V> java.util.Map<java.lang.String,V>
toMap(java.lang.Object... data)
          Create a map from passed nameX, valueX parameters
static
<V,V1 extends V>
java.util.Map<java.lang.String,V>
toMap(java.lang.String name1, V1 value1)
          Create a map from passed nameX, valueX parameters
static
<V,V1 extends V,V2 extends V>
java.util.Map<java.lang.String,V>
toMap(java.lang.String name1, V1 value1, java.lang.String name2, V2 value2)
          Create a map from passed nameX, valueX parameters
static
<V,V1 extends V,V2 extends V,V3 extends V>
java.util.Map<java.lang.String,V>
toMap(java.lang.String name1, V1 value1, java.lang.String name2, V2 value2, java.lang.String name3, V3 value3)
          Create a map from passed nameX, valueX parameters
static
<V,V1 extends V,V2 extends V,V3 extends V,V4 extends V>
java.util.Map<java.lang.String,V>
toMap(java.lang.String name1, V1 value1, java.lang.String name2, V2 value2, java.lang.String name3, V3 value3, java.lang.String name4, V4 value4)
          Create a map from passed nameX, valueX parameters
static
<V,V1 extends V,V2 extends V,V3 extends V,V4 extends V,V5 extends V>
java.util.Map<java.lang.String,V>
toMap(java.lang.String name1, V1 value1, java.lang.String name2, V2 value2, java.lang.String name3, V3 value3, java.lang.String name4, V4 value4, java.lang.String name5, V5 value5)
          Create a map from passed nameX, valueX parameters
static
<V,V1 extends V,V2 extends V,V3 extends V,V4 extends V,V5 extends V,V6 extends V>
java.util.Map<java.lang.String,V>
toMap(java.lang.String name1, V1 value1, java.lang.String name2, V2 value2, java.lang.String name3, V3 value3, java.lang.String name4, V4 value4, java.lang.String name5, V5 value5, java.lang.String name6, V6 value6)
          Create a map from passed nameX, valueX parameters
static
<T> java.util.Set<T>
toSet(java.util.Collection<T> collection)
           
static
<T> java.util.Set<T>
toSet(T obj1)
          Create a Set from passed objX parameters
static
<T> java.util.Set<T>
toSet(T obj1, T obj2)
          Create a Set from passed objX parameters
static
<T> java.util.Set<T>
toSet(T obj1, T obj2, T obj3)
          Create a Set from passed objX parameters
static
<T> java.util.Set<T>
toSet(T obj1, T obj2, T obj3, T obj4)
          Create a Set from passed objX parameters
static
<T> java.util.Set<T>
toSet(T obj1, T obj2, T obj3, T obj4, T obj5)
          Create a Set from passed objX parameters
static
<T> java.util.Set<T>
toSet(T obj1, T obj2, T obj3, T obj4, T obj5, T obj6)
          Create a Set from passed objX parameters
static
<T> java.util.Set<T>
toSetArray(T[] data)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

module

public static final java.lang.String module

ZERO_BD

public static final java.math.BigDecimal ZERO_BD

availableLocaleList

public static java.util.List<java.util.Locale> availableLocaleList
Constructor Detail

UtilMisc

public UtilMisc()
Method Detail

toIterator

public static <T> java.util.Iterator<T> toIterator(java.util.Collection<T> col)
Get an iterator from a collection, returning null if collection is null

Parameters:
col - The collection to be turned in to an iterator
Returns:
The resulting Iterator

toMap

public static <V,V1 extends V> java.util.Map<java.lang.String,V> toMap(java.lang.String name1,
                                                                       V1 value1)
Create a map from passed nameX, valueX parameters

Returns:
The resulting Map

toMap

public static <V,V1 extends V,V2 extends V> java.util.Map<java.lang.String,V> toMap(java.lang.String name1,
                                                                                    V1 value1,
                                                                                    java.lang.String name2,
                                                                                    V2 value2)
Create a map from passed nameX, valueX parameters

Returns:
The resulting Map

toMap

public static <V,V1 extends V,V2 extends V,V3 extends V> java.util.Map<java.lang.String,V> toMap(java.lang.String name1,
                                                                                                 V1 value1,
                                                                                                 java.lang.String name2,
                                                                                                 V2 value2,
                                                                                                 java.lang.String name3,
                                                                                                 V3 value3)
Create a map from passed nameX, valueX parameters

Returns:
The resulting Map

toMap

public static <V,V1 extends V,V2 extends V,V3 extends V,V4 extends V> java.util.Map<java.lang.String,V> toMap(java.lang.String name1,
                                                                                                              V1 value1,
                                                                                                              java.lang.String name2,
                                                                                                              V2 value2,
                                                                                                              java.lang.String name3,
                                                                                                              V3 value3,
                                                                                                              java.lang.String name4,
                                                                                                              V4 value4)
Create a map from passed nameX, valueX parameters

Returns:
The resulting Map

toMap

public static <V,V1 extends V,V2 extends V,V3 extends V,V4 extends V,V5 extends V> java.util.Map<java.lang.String,V> toMap(java.lang.String name1,
                                                                                                                           V1 value1,
                                                                                                                           java.lang.String name2,
                                                                                                                           V2 value2,
                                                                                                                           java.lang.String name3,
                                                                                                                           V3 value3,
                                                                                                                           java.lang.String name4,
                                                                                                                           V4 value4,
                                                                                                                           java.lang.String name5,
                                                                                                                           V5 value5)
Create a map from passed nameX, valueX parameters

Returns:
The resulting Map

toMap

public static <V,V1 extends V,V2 extends V,V3 extends V,V4 extends V,V5 extends V,V6 extends V> java.util.Map<java.lang.String,V> toMap(java.lang.String name1,
                                                                                                                                        V1 value1,
                                                                                                                                        java.lang.String name2,
                                                                                                                                        V2 value2,
                                                                                                                                        java.lang.String name3,
                                                                                                                                        V3 value3,
                                                                                                                                        java.lang.String name4,
                                                                                                                                        V4 value4,
                                                                                                                                        java.lang.String name5,
                                                                                                                                        V5 value5,
                                                                                                                                        java.lang.String name6,
                                                                                                                                        V6 value6)
Create a map from passed nameX, valueX parameters

Returns:
The resulting Map

toMap

public static <K,V> java.util.Map<java.lang.String,V> toMap(java.lang.Object... data)
Create a map from passed nameX, valueX parameters

Returns:
The resulting Map

printMap

public static <K,V> java.lang.String printMap(java.util.Map<? extends K,? extends V> theMap)

makeListWritable

public static <T> java.util.List<T> makeListWritable(java.util.Collection<? extends T> col)

makeMapWritable

public static <K,V> java.util.Map<K,V> makeMapWritable(java.util.Map<K,? extends V> map)

makeSetWritable

public static <T> java.util.Set<T> makeSetWritable(java.util.Collection<? extends T> col)

makeMapSerializable

public static <V> void makeMapSerializable(java.util.Map<java.lang.String,V> map)
This change a Map to be Serializable by removing all entries with values that are not Serializable.

Type Parameters:
V -
Parameters:
map -

sortMaps

public static java.util.List<java.util.Map<java.lang.Object,java.lang.Object>> sortMaps(java.util.List<java.util.Map<java.lang.Object,java.lang.Object>> listOfMaps,
                                                                                        java.util.List<? extends java.lang.String> sortKeys)
Sort a List of Maps by specified consistent keys.

Parameters:
listOfMaps - List of Map objects to sort.
sortKeys - List of Map keys to sort by.
Returns:
a new List of sorted Maps.

getMapFromMap

public static <K,IK,V> java.util.Map<IK,V> getMapFromMap(java.util.Map<K,java.util.Map<IK,V>> outerMap,
                                                         K key)
Assuming outerMap not null; if null will throw a NullPointerException


getListFromMap

public static <K,V> java.util.List<V> getListFromMap(java.util.Map<K,java.util.List<V>> outerMap,
                                                     K key)
Assuming outerMap not null; if null will throw a NullPointerException


addToBigDecimalInMap

public static <K> java.math.BigDecimal addToBigDecimalInMap(java.util.Map<K,java.lang.Object> theMap,
                                                            K mapKey,
                                                            java.math.BigDecimal addNumber)
Assuming theMap not null; if null will throw a NullPointerException


removeFirst

public static <T> T removeFirst(java.util.List<T> lst)

collectionToSet

public static <T> java.util.Set<T> collectionToSet(java.util.Collection<T> c)

toSet

public static <T> java.util.Set<T> toSet(T obj1)
Create a Set from passed objX parameters

Returns:
The resulting Set

toSet

public static <T> java.util.Set<T> toSet(T obj1,
                                         T obj2)
Create a Set from passed objX parameters

Returns:
The resulting Set

toSet

public static <T> java.util.Set<T> toSet(T obj1,
                                         T obj2,
                                         T obj3)
Create a Set from passed objX parameters

Returns:
The resulting Set

toSet

public static <T> java.util.Set<T> toSet(T obj1,
                                         T obj2,
                                         T obj3,
                                         T obj4)
Create a Set from passed objX parameters

Returns:
The resulting Set

toSet

public static <T> java.util.Set<T> toSet(T obj1,
                                         T obj2,
                                         T obj3,
                                         T obj4,
                                         T obj5)
Create a Set from passed objX parameters

Returns:
The resulting Set

toSet

public static <T> java.util.Set<T> toSet(T obj1,
                                         T obj2,
                                         T obj3,
                                         T obj4,
                                         T obj5,
                                         T obj6)
Create a Set from passed objX parameters

Returns:
The resulting Set

toSet

public static <T> java.util.Set<T> toSet(java.util.Collection<T> collection)

toSetArray

public static <T> java.util.Set<T> toSetArray(T[] data)

toList

public static <T> java.util.List<T> toList(T obj1)
Create a list from passed objX parameters

Returns:
The resulting List

toList

public static <T> java.util.List<T> toList(T obj1,
                                           T obj2)
Create a list from passed objX parameters

Returns:
The resulting List

toList

public static <T> java.util.List<T> toList(T obj1,
                                           T obj2,
                                           T obj3)
Create a list from passed objX parameters

Returns:
The resulting List

toList

public static <T> java.util.List<T> toList(T obj1,
                                           T obj2,
                                           T obj3,
                                           T obj4)
Create a list from passed objX parameters

Returns:
The resulting List

toList

public static <T> java.util.List<T> toList(T obj1,
                                           T obj2,
                                           T obj3,
                                           T obj4,
                                           T obj5)
Create a list from passed objX parameters

Returns:
The resulting List

toList

public static <T> java.util.List<T> toList(T obj1,
                                           T obj2,
                                           T obj3,
                                           T obj4,
                                           T obj5,
                                           T obj6)
Create a list from passed objX parameters

Returns:
The resulting List

toList

public static <T> java.util.List<T> toList(java.util.Collection<T> collection)

toListArray

public static <T> java.util.List<T> toListArray(T[] data)

addToListInMap

public static <K,V> void addToListInMap(V element,
                                        java.util.Map<K,java.lang.Object> theMap,
                                        K listKey)

addToSetInMap

public static <K,V> void addToSetInMap(V element,
                                       java.util.Map<K,java.util.Set<V>> theMap,
                                       K setKey)

addToSortedSetInMap

public static <K,V> void addToSortedSetInMap(V element,
                                             java.util.Map<K,java.util.Set<V>> theMap,
                                             K setKey)

toDouble

public static double toDouble(java.lang.Object obj)
Converts an Object to a double. Returns zero if conversion is not possible.

Parameters:
obj - Object to convert
Returns:
double value

toDoubleObject

public static java.lang.Double toDoubleObject(java.lang.Object obj)
Converts an Object to a Double. Returns null if conversion is not possible.

Parameters:
obj - Object to convert
Returns:
Double

toInteger

public static int toInteger(java.lang.Object obj)
Converts an Object to an int. Returns zero if conversion is not possible.

Parameters:
obj - Object to convert
Returns:
int value

toIntegerObject

public static java.lang.Integer toIntegerObject(java.lang.Object obj)
Converts an Object to an Integer. Returns null if conversion is not possible.

Parameters:
obj - Object to convert
Returns:
Integer

toLong

public static long toLong(java.lang.Object obj)
Converts an Object to a long. Returns zero if conversion is not possible.

Parameters:
obj - Object to convert
Returns:
long value

toLongObject

public static java.lang.Long toLongObject(java.lang.Object obj)
Converts an Object to a Long. Returns null if conversion is not possible.

Parameters:
obj - Object to convert
Returns:
Long

addToDoubleInMap

public static <K> void addToDoubleInMap(java.util.Map<K,java.lang.Object> theMap,
                                        K key,
                                        java.lang.Double value)
Adds value to the key entry in theMap, or creates a new one if not already there

Parameters:
theMap -
key -
value -

parseLocale

public static java.util.Locale parseLocale(java.lang.String localeString)
Parse a locale string Locale object

Parameters:
localeString - The locale string (en_US)
Returns:
Locale The new Locale object or null if no valid locale can be interpreted

ensureLocale

public static java.util.Locale ensureLocale(java.lang.Object localeObject)
The input can be a String, Locale, or even null and a valid Locale will always be returned; if nothing else works, returns the default locale.

Parameters:
localeObject - An Object representing the locale

availableLocales

public static java.util.List<java.util.Locale> availableLocales()
Returns a List of available locales sorted by display name


staticWait

public static void staticWait(long timeout)
                       throws java.lang.InterruptedException
Throws:
java.lang.InterruptedException