java.lang.Object
org.eclipse.persistence.internal.core.helper.CoreHelper
org.eclipse.persistence.internal.helper.Helper
All Implemented Interfaces:
Serializable

public class Helper extends CoreHelper implements Serializable
INTERNAL:

Purpose: Define any useful methods that are missing from the base Java.

See Also:
  • Field Details

    • shouldOptimizeDates

      public static boolean shouldOptimizeDates
      Used to configure JDBC level date optimization.
    • NULL_VALUE

      public static final Object NULL_VALUE
      Used to store null values in hashtables, is helper because need to be serializable.
    • calendarCache

      protected static final Queue<Calendar> calendarCache
      PERF: Used to cache a set of calendars for conversion/printing purposes.
    • defaultTimeZone

      protected static final TimeZone defaultTimeZone
      PERF: Cache default timezone for calendar conversion.
    • CR

      protected static String CR
      Store CR string, for some reason \n is not platform independent.
    • SPACE

      public static final String SPACE
      formatting strings for indenting
      See Also:
    • INDENT

      public static final String INDENT
      See Also:
    • NL

      public static final String NL
      Store newline string
      See Also:
    • PATH_SEPARATOR

      protected static String PATH_SEPARATOR
      Prime the platform-dependent path separator
    • FILE_SEPARATOR

      protected static String FILE_SEPARATOR
      Prime the platform-dependent file separator
    • CURRENT_WORKING_DIRECTORY

      protected static String CURRENT_WORKING_DIRECTORY
      Prime the platform-dependent current working directory
    • TEMP_DIRECTORY

      protected static String TEMP_DIRECTORY
      Prime the platform-dependent temporary directory
    • isZeroValidPrimaryKey

      @Deprecated public static boolean isZeroValidPrimaryKey
      Deprecated.
      Instead of setting the flag to true use: session.getProject().setDefaultIdValidation(IdValidation.NULL)
      Backdoor to allow 0 to be used in primary keys.
    • IS_PROPERTY_METHOD_PREFIX

      public static final String IS_PROPERTY_METHOD_PREFIX
      See Also:
    • GET_PROPERTY_METHOD_PREFIX

      public static final String GET_PROPERTY_METHOD_PREFIX
      See Also:
    • SET_PROPERTY_METHOD_PREFIX

      public static final String SET_PROPERTY_METHOD_PREFIX
      See Also:
    • SET_IS_PROPERTY_METHOD_PREFIX

      public static final String SET_IS_PROPERTY_METHOD_PREFIX
      See Also:
    • POSITION_AFTER_IS_PREFIX

      public static final int POSITION_AFTER_IS_PREFIX
    • POSITION_AFTER_GET_PREFIX

      public static final int POSITION_AFTER_GET_PREFIX
    • DEFAULT_DATABASE_DELIMITER

      public static final String DEFAULT_DATABASE_DELIMITER
      See Also:
    • PERSISTENCE_SET

      public static final String PERSISTENCE_SET
      See Also:
    • PERSISTENCE_GET

      public static final String PERSISTENCE_GET
      See Also:
    • PERSISTENCE_FIELDNAME_PREFIX

      public static final String PERSISTENCE_FIELDNAME_PREFIX
      See Also:
    • PERSISTENCE_FIELDNAME_POSTFIX

      public static final String PERSISTENCE_FIELDNAME_POSTFIX
      See Also:
  • Constructor Details

    • Helper

      public Helper()
  • Method Details

    • shouldOptimizeDates

      public static boolean shouldOptimizeDates()
      Return if JDBC date access should be optimized.
    • setShouldOptimizeDates

      public static void setShouldOptimizeDates(boolean value)
      Return if JDBC date access should be optimized.
    • getCalendarCache

      public static Queue<Calendar> getCalendarCache()
      PERF: Return the calendar cache use to avoid calendar creation for processing java.sql/util.Date/Time/Timestamp objects.
    • initCalendarCache

      public static Queue<Calendar> initCalendarCache()
      PERF: Init the calendar cache use to avoid calendar creation for processing java.sql/util.Date/Time/Timestamp objects.
    • allocateCalendar

      public static Calendar allocateCalendar()
      PERF: This is used to optimize Calendar conversion/printing. This should only be used when a calendar is temporarily required, when finished it must be released back.
    • getDefaultTimeZone

      public static TimeZone getDefaultTimeZone()
      PERF: Return the cached default platform. Used for ensuring Calendar are in the local timezone. The JDK method clones the timezone, so cache it locally.
    • getDefaultDateTimeFormatter

      public static DateTimeFormatter getDefaultDateTimeFormatter()
    • releaseCalendar

      public static void releaseCalendar(Calendar calendar)
      PERF: This is used to optimize Calendar conversion/printing. This should only be used when a calendar is temporarily required, when finished it must be released back.
    • addAllToVector

      public static <E> void addAllToVector(Vector<E> theVector, Vector<? extends E> elementsToAdd)
    • addAllUniqueToVector

      public static <T> Vector<T> addAllUniqueToVector(Vector<T> objects, List<T> objectsToAdd)
    • addAllUniqueToList

      public static <T> List<T> addAllUniqueToList(List<T> objects, List<T> objectsToAdd)
    • arrayFromVector

      public static Object[] arrayFromVector(Vector<?> vector)
      Convert the specified vector into an array.
    • integerToHexString

      public static String integerToHexString(Integer i)
      Convert Integer to hexadecimal String.
      Parameters:
      i - An Integer to be converted to a hexadecimal string.
      Returns:
      The String representation of the unsigned integer value represented by the argument in hexadecimal or "null" if provided Integer argument is null.
    • buildBytesFromHexString

      public static byte[] buildBytesFromHexString(String hex)
      Convert the HEX string to a byte array. HEX allows for binary data to be printed.
    • buildHexStringFromBytes

      public static String buildHexStringFromBytes(byte[] bytes)
      Convert the byte array to a HEX string. HEX allows for binary data to be printed.
    • buildVectorFromMapElements

      public static <T> Vector<T> buildVectorFromMapElements(Map<?,T> map)
      Create a new Vector containing all of the map elements.
    • calendarFromUtilDate

      public static Calendar calendarFromUtilDate(Date date)
      Answer a Calendar from a date.
    • classImplementsInterface

      public static <T> boolean classImplementsInterface(Class<T> aClass, Class<?> anInterface)
      INTERNAL: Return whether a Class implements a specific interface, either directly or indirectly (through interface or implementation inheritance).
      Returns:
      boolean
    • classIsSubclass

      public static boolean classIsSubclass(Class<?> subClass, Class<?> superClass)
      INTERNAL: Return whether a Class is a subclass of, or the same as, another Class.
      Returns:
      boolean
    • compareVersions

      public static int compareVersions(String version1, String version2)
      INTERNAL: Compares two version in num.num.num.num.num*** format. -1, 0, 1 means the version1 is less than, equal, greater than version2. Example: compareVersions("11.1.0.6.0-Production", "11.1.0.7") == -1 Example: compareVersions("WebLogic Server 10.3.4", "10.3.3.0") == 1
    • version

      protected static List<Integer> version(String version)
      INTERNAL: Expects version in ***num.num.num.num.num*** format, converts it to a List of Integers. Example: "11.1.0.6.0_Production" -> {11, 1, 0, 6, 0} Example: "WebLogic Server 10.3.3.0" -> {10, 3, 3, 0}
    • compareVersions

      protected static int compareVersions(List<Integer> list1, List<Integer> list2)
      INTERNAL: Compares two lists of Integers -1, 0, 1 means the first list is less than, equal, greater than the second list. Example: {11, 1, 0, 6, 0} < {11, 1, 0, 7}
    • getClassFromClasseName

      public static <T> Class<T> getClassFromClasseName(String className, ClassLoader classLoader)
    • getComponentTypeNameFromArrayString

      public static String getComponentTypeNameFromArrayString(String aString)
    • compareArrays

      public static boolean compareArrays(Object[] array1, Object[] array2)
    • compareBigDecimals

      public static boolean compareBigDecimals(BigDecimal one, BigDecimal two)
      Compare two BigDecimals. This is required because the .equals method of java.math.BigDecimal ensures that the scale of the two numbers are equal. Therefore 0.0 != 0.00.
      See Also:
    • compareByteArrays

      public static boolean compareByteArrays(byte[] array1, byte[] array2)
    • compareCharArrays

      public static boolean compareCharArrays(char[] array1, char[] array2)
    • areTypesAssignable

      public static boolean areTypesAssignable(List<Class<?>> types1, List<Class<?>> types2)
      PUBLIC: Compare two vectors of types. Return true if the size of the vectors is the same and each of the types in the first Vector are assignable from the types in the corresponding objects in the second Vector.
    • compareHashtables

      public static boolean compareHashtables(Hashtable<?,?> hashtable1, Hashtable<?,?> hashtable2)
      PUBLIC: Compare the elements in 2 hashtables to see if they are equal Added Nov 9, 2000 JED Patch 2.5.1.8
    • comparePotentialArrays

      public static boolean comparePotentialArrays(Object firstValue, Object secondValue)
      Compare two potential arrays and return true if they are the same. Will check for BigDecimals as well.
    • concatenateMaps

      public static <K, V> Map<K,V> concatenateMaps(Map<? extends K,? extends V> first, Map<? extends K,? extends V> second)
      Merge the two Maps into a new HashMap.
    • concatenateUniqueVectors

      public static <E> Vector<E> concatenateUniqueVectors(Vector<? extends E> first, Vector<? extends E> second)
      Return a new vector with no duplicated values.
    • concatenateUniqueLists

      public static <E> List<E> concatenateUniqueLists(List<? extends E> first, List<? extends E> second)
      Return a new List with no duplicated values.
    • concatenateVectors

      public static <E> Vector<E> concatenateVectors(Vector<? extends E> first, Vector<? extends E> second)
    • copyVector

      public static <E> Vector<E> copyVector(List<E> originalVector, int startIndex, int stopIndex) throws ValidationException
      Return a copy of the vector containing a subset starting at startIndex and ending at stopIndex.
      Parameters:
      originalVector - - original vector
      startIndex - - starting position in vector
      stopIndex - - ending position in vector
      Throws:
      ValidationException
    • copyStringArray

      public static String[] copyStringArray(String[] original)
      Copy an array of strings to a new array
    • copyIntArray

      public static int[] copyIntArray(int[] original)
      Copy an array of int to a new array
    • copyBooleanArray

      public static boolean[] copyBooleanArray(boolean[] original)
      Copy an array of boolean to a new array
      Parameters:
      original -
      Returns:
    • cr

      public static String cr()
      Return a string containing the platform-appropriate characters for carriage return.
    • currentWorkingDirectory

      public static String currentWorkingDirectory()
      Return the name of the "current working directory".
    • tempDirectory

      public static String tempDirectory()
      Return the name of the "temporary directory".
    • dateFromLong

      public static Date dateFromLong(Long longObject)
      Answer a Date from a long This implementation is based on the java.sql.Date class, not java.util.Date.
      Parameters:
      longObject - - milliseconds from the epoch (00:00:00 GMT Jan 1, 1970). Negative values represent dates prior to the epoch.
    • dateFromYearMonthDate

      public static Date dateFromYearMonthDate(int year, int month, int day)
      Answer a Date with the year, month, date. This builds a date avoiding the deprecated, inefficient and concurrency bottleneck date constructors. This implementation is based on the java.sql.Date class, not java.util.Date. The year, month, day are the values calendar uses, i.e. year is from 0, month is 0-11, date is 1-31.
    • dateFromString

      public static Date dateFromString(String dateString) throws ConversionException
      Answer a Date from a string representation. The string MUST be a valid date and in one of the following formats: YYYY/MM/DD, YYYY-MM-DD, YY/MM/DD, YY-MM-DD. This implementation is based on the java.sql.Date class, not java.util.Date. The Date class contains some minor gotchas that you have to watch out for.
      Parameters:
      dateString - - string representation of date
      Returns:
      - date representation of string
      Throws:
      ConversionException
    • dateFromTimestamp

      public static Date dateFromTimestamp(Timestamp timestamp)
      Answer a Date from a timestamp This implementation is based on the java.sql.Date class, not java.util.Date.
      Parameters:
      timestamp - - timestamp representation of date
      Returns:
      - date representation of timestampObject
    • doesFileExist

      public static boolean doesFileExist(String fileName)
      Returns true if the file of this name does indeed exist
    • doubleSlashes

      public static String doubleSlashes(String path)
      Double up \ to allow printing of directories for source code generation.
    • extractJarNameFromURL

      public static String extractJarNameFromURL(URL url)
      Extracts the actual path to the jar file.
    • fileSeparator

      public static String fileSeparator()
      Return a string containing the platform-appropriate characters for separating directory and file names.
    • getField

      public static Field getField(Class<?> javaClass, String fieldName) throws NoSuchFieldException
      INTERNAL: Returns a Field for the specified Class and field name. Uses Class.getDeclaredField(String) to find the field. If the field is not found on the specified class the superclass is checked, and so on, recursively. Set accessible to true, so we can access private/package/protected fields.
      Throws:
      NoSuchFieldException
    • getDeclaredMethod

      public static Method getDeclaredMethod(Class<?> javaClass, String methodName) throws NoSuchMethodException
      INTERNAL: Returns a Method for the specified Class, method name, and that has no parameters. Uses Class.getDeclaredMethod(String Class[]) to find the method. If the method is not found on the specified class the superclass is checked, and so on, recursively. Set accessible to true, so we can access private/package/protected methods.
      Throws:
      NoSuchMethodException
    • getDeclaredMethod

      public static Method getDeclaredMethod(Class<?> javaClass, String methodName, Class<?>[] methodParameterTypes) throws NoSuchMethodException
      INTERNAL: Returns a Method for the specified Class, method name, and formal parameter types. Uses Class.getDeclaredMethod(String Class[]) to find the method. If the method is not found on the specified class the superclass is checked, and so on, recursively. Set accessible to true, so we can access private/package/protected methods.
      Throws:
      NoSuchMethodException
    • getInstanceFromClass

      public static Object getInstanceFromClass(Class<?> classFullName)
      Return the class instance from the class
    • getObjectClass

      public static Class<?> getObjectClass(Class<?> javaClass)
      Returns the object class. If a class is primitive return its non primitive class
    • getShortClassName

      public static String getShortClassName(Class<?> javaClass)
      Answers the unqualified class name for the provided class.
    • getShortClassName

      public static String getShortClassName(String javaClassName)
      Answers the unqualified class name from the specified String.
    • getShortClassName

      public static String getShortClassName(Object object)
      Answers the unqualified class name for the specified object.
    • getPackageName

      public static String getPackageName(Class<?> javaClass)
      return a package name for the specified class.
    • getTabs

      public static String getTabs(int noOfTabs)
      Return a string containing the specified number of tabs.
    • indexOfNullElement

      public static int indexOfNullElement(Vector<?> v, int index)
      Returns the index of the the first null element found in the specified Vector starting the search at the starting index specified. Return an int >= 0 and less than size if a null element was found. Return -1 if a null element was not found. This is needed in jdk1.1, where Vector.contains(Object) for a null element will result in a NullPointerException....
    • isPrimitiveWrapper

      public static boolean isPrimitiveWrapper(Class<?> classInQuestion)
      ADVANCED returns true if the class in question is a primitive wrapper
    • isUpperCaseString

      public static boolean isUpperCaseString(String s)
      Returns true if the string given is an all upper case string
    • isVowel

      public static boolean isVowel(char c)
      Returns true if the character given is a vowel. I.e. one of a,e,i,o,u,A,E,I,O,U.
    • listFilesIn

      public static File[] listFilesIn(File directory)
      Return an array of the files in the specified directory. This allows us to simplify jdk1.1 code a bit.
    • makeVectorFromObject

      public static <T> Vector<T> makeVectorFromObject(Object theObject)
      Make a Vector from the passed object. If it's a Collection, iterate over the collection and add each item to the Vector. If it's not a collection create a Vector and add the object to it.
    • outputClassFile

      public static void outputClassFile(String className, byte[] classBytes, String outputPath)
      Used by our byte code weaving to enable users who are debugging to output the generated class to a file
    • pathSeparator

      public static String pathSeparator()
      Return a string containing the platform-appropriate characters for separating entries in a path (e.g. the classpath)
    • printStackTraceToString

      public static String printStackTraceToString(Throwable aThrowable)
      Return a String containing the printed stacktrace of an exception.
    • printTimeFromMilliseconds

      public static String printTimeFromMilliseconds(long milliseconds)
    • printVector

      public static String printVector(Vector<?> vector)
      Given a Vector, print it, even if there is a null in it
    • rehashHashtable

      public static <K, V> Hashtable<K,V> rehashHashtable(Hashtable<K,V> table)
    • rehashMap

      public static <K, V> Map<K,V> rehashMap(Map<K,V> table)
    • removeAllButAlphaNumericToFit

      public static String removeAllButAlphaNumericToFit(String s1, int maximumStringLength)
      Returns a String which has had enough non-alphanumeric characters removed to be equal to the maximumStringLength.
    • removeCharacterToFit

      public static String removeCharacterToFit(String s1, char aChar, int maximumStringLength)
      Returns a String which has had enough of the specified character removed to be equal to the maximumStringLength.
    • removeVowels

      public static String removeVowels(String s1)
      Returns a String which has had enough of the specified character removed to be equal to the maximumStringLength.
    • replaceFirstSubString

      public static String replaceFirstSubString(String source, String subString, String replacement)
      Replaces the first subString of the source with the replacement.
    • reverseVector

      public static <T> Vector<T> reverseVector(Vector<T> theVector)
    • rightTrimString

      public static String rightTrimString(String originalString)
      Returns a new string with all space characters removed from the right
      Parameters:
      originalString - - timestamp representation of date
      Returns:
      - String
    • shortenStringsByRemovingVowelsToFit

      public static String shortenStringsByRemovingVowelsToFit(String s1, String s2, int maximumStringLength)
      Returns a String which is a concatenation of two string which have had enough vowels removed from them so that the sum of the sized of the two strings is less than or equal to the specified size.
    • sqlDateFromUtilDate

      public static Date sqlDateFromUtilDate(Date utilDate)
      Answer a sql.Date from a timestamp.
    • printDate

      public static String printDate(Date date)
      Print the sql.Date.
    • printDate

      public static String printDate(Calendar calendar)
      Print the date part of the calendar.
    • printDate

      public static String printDate(Calendar calendar, boolean useLocalTime)
      Print the date part of the calendar. Normally the calendar must be printed in the local time, but if the timezone is printed, it must be printing in its timezone.
    • printTime

      public static String printTime(Time time)
      Print the sql.Time.
    • printTime

      public static String printTime(Calendar calendar)
      Print the time part of the calendar.
    • printTime

      public static String printTime(Calendar calendar, boolean useLocalTime)
      Print the time part of the calendar. Normally the calendar must be printed in the local time, but if the timezone is printed, it must be printing in its timezone.
    • printCalendar

      public static String printCalendar(Calendar calendar)
      Print the Calendar.
    • printCalendar

      public static String printCalendar(Calendar calendar, boolean useLocalTime)
      Print the Calendar. Normally the calendar must be printed in the local time, but if the timezone is printed, it must be printing in its timezone.
    • printTimestamp

      public static String printTimestamp(Timestamp timestamp)
      Print the sql.Timestamp.
    • buildZeroPrefix

      public static String buildZeroPrefix(int number, int totalDigits)
      Build a numerical string with leading 0s. number is an existing number that the new string will be built on. totalDigits is the number of the required digits of the string.
    • buildZeroPrefixWithoutSign

      public static String buildZeroPrefixWithoutSign(int number, int totalDigits)
      Build a numerical string with leading 0s. number is an existing number that the new string will be built on. totalDigits is the number of the required digits of the string.
    • buildZeroPrefixAndTruncTrailZeros

      public static String buildZeroPrefixAndTruncTrailZeros(int number, int totalDigits)
      Build a numerical string with leading 0s and truncate trailing zeros. number is an existing number that the new string will be built on. totalDigits is the number of the required digits of the string.
    • printTimestampWithoutNanos

      public static String printTimestampWithoutNanos(Timestamp timestamp)
      Print the sql.Timestamp without the nanos portion.
    • printCalendarWithoutNanos

      public static String printCalendarWithoutNanos(Calendar calendar)
      Print the Calendar without the nanos portion.
    • dateFromCalendar

      public static Date dateFromCalendar(Calendar calendar)
      Answer a sql.Date from a Calendar.
    • truncateDate

      public static Date truncateDate(Date date)
      Return a sql.Date with time component zeroed out. Starting with version 12.1 Oracle jdbc Statement.setDate method no longer zeroes out the time component.
    • truncateDateIgnoreMilliseconds

      public static Date truncateDateIgnoreMilliseconds(Date date)
      Return a sql.Date with time component zeroed out (with possible exception of milliseconds). Starting with version 12.1 Oracle jdbc Statement.setDate method no longer zeroes out the whole time component, yet it still zeroes out milliseconds.
    • systemBug

      public static void systemBug(String description)
      Can be used to mark code if a workaround is added for a JDBC driver or other bug.
    • timeFromDate

      public static Time timeFromDate(Date date)
      Answer a Time from a Date This implementation is based on the java.sql.Date class, not java.util.Date.
      Parameters:
      date - - time representation of date
      Returns:
      - time representation of dateObject
    • timeFromLong

      public static Time timeFromLong(Long longObject)
      Answer a Time from a long
      Parameters:
      longObject - - milliseconds from the epoch (00:00:00 GMT Jan 1, 1970). Negative values represent dates prior to the epoch.
    • timeFromHourMinuteSecond

      public static Time timeFromHourMinuteSecond(int hour, int minute, int second)
      Answer a Time with the hour, minute, second. This builds a time avoiding the deprecated, inefficient and concurrency bottleneck date constructors. The hour, minute, second are the values calendar uses, i.e. year is from 0, month is 0-11, date is 1-31.
    • timeFromString

      public static Time timeFromString(String timeString) throws ConversionException
      Answer a Time from a string representation. This method will accept times in the following formats: HH-MM-SS, HH:MM:SS
      Parameters:
      timeString - - string representation of time
      Returns:
      - time representation of string
      Throws:
      ConversionException
    • timeFromTimestamp

      public static Time timeFromTimestamp(Timestamp timestamp)
      Answer a Time from a Timestamp Usus the Hours, Minutes, Seconds instead of getTime() ms value.
    • timeFromCalendar

      public static Time timeFromCalendar(Calendar calendar)
      Answer a sql.Time from a Calendar.
    • timestampFromCalendar

      public static Timestamp timestampFromCalendar(Calendar calendar)
      Answer a Timestamp from a Calendar.
    • timestampFromDate

      public static Timestamp timestampFromDate(Date date)
      Answer a Timestamp from a java.util.Date.
    • timestampFromLong

      public static Timestamp timestampFromLong(Long millis)
      Answer a Time from a long
      Parameters:
      millis - - milliseconds from the epoch (00:00:00 GMT Jan 1, 1970). Negative values represent dates prior to the epoch.
    • timestampFromLong

      public static Timestamp timestampFromLong(long millis)
      Answer a Time from a long
      Parameters:
      millis - - milliseconds from the epoch (00:00:00 GMT Jan 1, 1970). Negative values represent dates prior to the epoch.
    • timestampFromString

      public static Timestamp timestampFromString(String timestampString) throws ConversionException
      Answer a Timestamp from a string representation. This method will accept strings in the following formats: YYYY/MM/DD HH:MM:SS YY/MM/DD HH:MM:SS YYYY-MM-DD HH:MM:SS YY-MM-DD HH:MM:SS YYYY/MM/DD HH:MM:SS.NNNNNNN YYYY/MM/DD HH:MM:SS.NNNNNNN+Z
      Parameters:
      timestampString - - string representation of timestamp
      Returns:
      - timestamp representation of string
      Throws:
      ConversionException
    • timestampFromYearMonthDateHourMinuteSecondNanos

      public static Timestamp timestampFromYearMonthDateHourMinuteSecondNanos(int year, int month, int date, int hour, int minute, int second, int nanos)
      Answer a Timestamp with the year, month, day, hour, minute, second. The hour, minute, second are the values calendar uses, i.e. year is from 0, month is 0-11, date is 1-31, time is 0-23/59.
    • toDo

      public static void toDo(String description)
      Can be used to mark code as need if something strange is seen.
    • toSlashedClassName

      public static String toSlashedClassName(String dottedClassName)
      Convert dotted format class name to slashed format class name.
      Returns:
      String
    • truncate

      public static String truncate(String originalString, int size)
      If the size of the original string is larger than the passed in size, this method will remove the vowels from the original string. The removal starts backward from the end of original string, and stops if the resulting string size is equal to the passed in size. If the resulting string is still larger than the passed in size after removing all vowels, the end of the resulting string will be truncated.
    • utilDateFromLong

      public static Date utilDateFromLong(Long longObject)
      Answer a Date from a long This implementation is based on the java.sql.Date class, not java.util.Date.
      Parameters:
      longObject - - milliseconds from the epoch (00:00:00 GMT Jan 1, 1970). Negative values represent dates prior to the epoch.
    • utilDateFromSQLDate

      public static Date utilDateFromSQLDate(Date sqlDate)
      Answer a java.util.Date from a sql.date
      Parameters:
      sqlDate - - sql.date representation of date
      Returns:
      - java.util.Date representation of the sql.date
    • utilDateFromTime

      public static Date utilDateFromTime(Time time)
      Answer a java.util.Date from a sql.Time
      Parameters:
      time - - time representation of util date
      Returns:
      - java.util.Date representation of the time
    • utilDateFromTimestamp

      public static Date utilDateFromTimestamp(Timestamp timestampObject)
      Answer a java.util.Date from a timestamp
      Parameters:
      timestampObject - - timestamp representation of date
      Returns:
      - java.util.Date representation of timestampObject
    • vectorFromArray

      public static <T> Vector<T> vectorFromArray(T[] array)
      Convert the specified array into a vector.
    • writeHexString

      public static void writeHexString(byte[] bytes, Writer writer) throws IOException
      Convert the byte array to a HEX string. HEX allows for binary data to be printed.
      Throws:
      IOException
    • isEquivalentToNull

      public static boolean isEquivalentToNull(Object value)
      Check if the value is 0 (int/long) for primitive ids.
    • isNumberNegativeOrZero

      public static boolean isNumberNegativeOrZero(Object value)
      Returns true if the passed value is Number that is negative or equals to zero.
    • countOccurrencesOf

      public static int countOccurrencesOf(Object comparisonObject, List<?> list)
      Return an integer representing the number of occurrences (using equals()) of the specified object in the specified list. If the list is null or empty (or both the object and the list is null), 0 is returned.
    • toURI

      public static URI toURI(URL url) throws URISyntaxException
      Convert the URL into a URI allowing for special chars.
      Throws:
      URISyntaxException
    • getWeavedValueHolderGetMethodName

      public static String getWeavedValueHolderGetMethodName(String attributeName)
      Return the get method name weaved for a value-holder attribute.
    • getWeavedValueHolderSetMethodName

      public static String getWeavedValueHolderSetMethodName(String attributeName)
      Return the set method name weaved for a value-holder attribute.
    • getWeavedGetMethodName

      public static String getWeavedGetMethodName(String attributeName)
      Return the set method name weaved for getting attribute value. This method is always weaved in field access case. In property access case the method weaved only if attribute name is the same as property name: for instance, the method weaved for "manager" attribute that uses "getManager" / "setManager" access methods, but not for "m_address" attribute that uses "getAddress" / "setAddress" access methods.
    • getWeavedSetMethodName

      public static String getWeavedSetMethodName(String attributeName)
      Return the set method name weaved for setting attribute value. This method is always weaved in field access case. In property access case the method weaved only if attribute name is the same as property name: for instance, the method weaved for "manager" attribute that uses "getManager" / "setManager" access methods, but not for "m_address" attribute that uses "getAddress" / "setAddress" access methods.
    • close

      public static void close(Closeable c)
      Close a closeable object, eating the exception
    • getAttributeNameFromMethodName

      public static String getAttributeNameFromMethodName(String methodName)
      INTERNAL: Method to convert a getXyz or isXyz method name to an xyz attribute name. NOTE: The method name passed it may not actually be a method name, so by default return the name passed in.
    • getDefaultStartDatabaseDelimiter

      public static String getDefaultStartDatabaseDelimiter()
    • getDefaultEndDatabaseDelimiter

      public static String getDefaultEndDatabaseDelimiter()
    • setDefaultStartDatabaseDelimiter

      public static void setDefaultStartDatabaseDelimiter(String delimiter)
    • setDefaultEndDatabaseDelimiter

      public static void setDefaultEndDatabaseDelimiter(String delimiter)
    • convertLikeToRegex

      public static String convertLikeToRegex(String like)
      Convert the SQL like pattern to a regex pattern.
    • isLob

      public static boolean isLob(DatabaseField field)
    • hasLob

      public static boolean hasLob(Collection<DatabaseField> fields)
    • timeWithRoundMiliseconds

      public static long timeWithRoundMiliseconds()