@Nonnull public HCTime setAsTime (@Nonnegative final int nHour, @Nonnegative final int nMinute) { m_sDatetime = StringHelper.getLeadingZero (nHour, LENGTH_HOUR) + ":" + StringHelper.getLeadingZero (nMinute, LENGTH_MIN); return this; }
@Nonnull public HCTime setAsDate (@Nonnegative final int nYear, @Nonnegative final int nMonth, @Nonnegative final int nDay) { m_sDatetime = StringHelper.getLeadingZero (nYear, LENGTH_YEAR) + "-" + StringHelper.getLeadingZero (nMonth, LENGTH_MONTH) + "-" + StringHelper.getLeadingZero (nDay, LENGTH_DAY); return this; }
@Nonnull public HCTime setAsMonth (@Nonnegative final int nYear, @Nonnegative final int nMonth) { m_sDatetime = StringHelper.getLeadingZero (nYear, LENGTH_YEAR) + "-" + StringHelper.getLeadingZero (nMonth, LENGTH_MONTH); return this; }
@Nonnull public HCTime setAsYearlessDate (@Nonnegative final int nMonth, @Nonnegative final int nDay) { m_sDatetime = StringHelper.getLeadingZero (nMonth, LENGTH_MONTH) + "-" + StringHelper.getLeadingZero (nDay, LENGTH_DAY); return this; }
@Nonnull public HCTime setAsTime (@Nonnegative final int nHour, @Nonnegative final int nMinute, @Nonnegative final int nSecond) { m_sDatetime = StringHelper.getLeadingZero (nHour, LENGTH_HOUR) + ":" + StringHelper.getLeadingZero (nMinute, LENGTH_MIN) + ":" + StringHelper.getLeadingZero (nSecond, LENGTH_SEC); return this; }
@Nonnull public HCTime setAsYear (@Nonnegative final int nYear) { m_sDatetime = StringHelper.getLeadingZero (nYear, LENGTH_YEAR); return this; }
@Nonnull public HCTime setAsWeekInYear (@Nonnegative final int nYear, @Nonnegative final int nWeekInYear) { m_sDatetime = StringHelper.getLeadingZero (nYear, LENGTH_YEAR) + "-W" + StringHelper.getLeadingZero (nWeekInYear, LENGTH_WEEKINYEAR); return this; }
@Nullable public static String getLeadingZero (@Nullable final Byte aValue, final int nChars) { return aValue == null ? null : getLeadingZero (aValue.byteValue (), nChars); }
@Nullable public static String getLeadingZero (@Nullable final Long aValue, final int nChars) { return aValue == null ? null : getLeadingZero (aValue.longValue (), nChars); }
@Nullable public static String getLeadingZero (@Nullable final Integer aValue, final int nChars) { return aValue == null ? null : getLeadingZero (aValue.longValue (), nChars); }
@Nonnull public HCTime setAsTime (@Nonnegative final int nHour, @Nonnegative final int nMinute, @Nonnegative final int nSecond, @Nonnegative final int nMilliSeconds) { m_sDatetime = StringHelper.getLeadingZero (nHour, LENGTH_HOUR) + ":" + StringHelper.getLeadingZero (nMinute, LENGTH_MIN) + ":" + StringHelper.getLeadingZero (nSecond, LENGTH_SEC) + "." + nMilliSeconds; return this; }
@Nullable public static String getLeadingZero (@Nullable final Short aValue, final int nChars) { return aValue == null ? null : getLeadingZero (aValue.shortValue (), nChars); }
@Nonnull public static String getHexStringLeadingZero (final long nValue, final int nDigits) { if (nValue < 0) return "-" + getLeadingZero (getHexString (-nValue), nDigits - 1); return getLeadingZero (getHexString (nValue), nDigits); }
@Nonnull public static String getHexStringLeadingZero (final short nValue, final int nDigits) { // Short are always handled unsigned return getLeadingZero (getHexString (nValue), nDigits); }
@Nonnull public static String getHexStringLeadingZero (final byte nValue, final int nDigits) { return getLeadingZero (getHexString (nValue), nDigits); }
@Nonnull public static String getHexStringLeadingZero (final int nValue, final int nDigits) { if (nValue < 0) return "-" + getLeadingZero (getHexString (-nValue), nDigits - 1); return getLeadingZero (getHexString (nValue), nDigits); }
@Nonnull public HCTime setAsTimezone (@CheckForSigned final int nMinutes) { final int nHours = nMinutes / CGlobal.MINUTES_PER_HOUR; final int nRestMinutes = nMinutes % CGlobal.MINUTES_PER_HOUR; m_sDatetime = (nHours < 0 ? "-" : "+") + StringHelper.getLeadingZero (MathHelper.abs (nHours), LENGTH_HOUR) + ":" + StringHelper.getLeadingZero (MathHelper.abs (nRestMinutes), LENGTH_MIN); return this; }
@Nonnull public static String createIBANWithValidChecksum (@Nonnull final String sCountry, @Nonnull final String sBBAN) { // create the checksum final int nChecksum = createChecksumOfNewIBAN (sCountry, sBBAN); // convert to unified IBAN return unifyIBAN (sCountry + StringHelper.getLeadingZero (nChecksum, 2) + sBBAN); }