Пример #1
0
  /**
   * Returns a decoded time object for <code>date</code> interpreted in <code>timezone</code> <code>
   * timezone</code> is the number of hours added to UTC to get local time. It is in the range -12.0
   * to +14.0 where UTC is zone 0.0
   *
   * @param timezone
   * @return DecodedDateTime
   */
  public DecodedDateTime decodeCalendarDate(double timezone) {
    {
      CalendarDate date = this;

      {
        int hour = Stella.NULL_INTEGER;
        int min = Stella.NULL_INTEGER;
        int sec = Stella.NULL_INTEGER;
        int millis = Stella.NULL_INTEGER;

        {
          Object[] caller_MV_returnarray = new Object[3];

          hour = date.getTime(timezone, caller_MV_returnarray);
          min = ((int) (((IntegerWrapper) (caller_MV_returnarray[0])).wrapperValue));
          sec = ((int) (((IntegerWrapper) (caller_MV_returnarray[1])).wrapperValue));
          millis = ((int) (((IntegerWrapper) (caller_MV_returnarray[2])).wrapperValue));
        }
        {
          int year = Stella.NULL_INTEGER;
          int month = Stella.NULL_INTEGER;
          int day = Stella.NULL_INTEGER;
          Keyword dow = null;

          {
            Object[] caller_MV_returnarray = new Object[3];

            year = date.getCalendarDate(timezone, caller_MV_returnarray);
            month = ((int) (((IntegerWrapper) (caller_MV_returnarray[0])).wrapperValue));
            day = ((int) (((IntegerWrapper) (caller_MV_returnarray[1])).wrapperValue));
            dow = ((Keyword) (caller_MV_returnarray[2]));
          }
          {
            DecodedDateTime self000 = DecodedDateTime.newDecodedDateTime();

            self000.dateTimeMillis = ((double) (millis));
            self000.dateTimeSecond = sec;
            self000.dateTimeMinute = min;
            self000.dateTimeHour = hour;
            self000.dateTimeDay = day;
            self000.dateTimeMonth = month;
            self000.dateTimeYear = year;
            self000.dateTimeZone = timezone;
            self000.dateTimeDow = dow;
            {
              DecodedDateTime value000 = self000;

              return (value000);
            }
          }
        }
      }
    }
  }
Пример #2
0
  /**
   * Returns the date part of the string representation of <code>date</code> adjusted for <code>
   * timezone</code>. Format is YYYY-MMM-DD, where MMM is a three letter English abbreviation of the
   * month if <code>numericMonthP</code> is <code>false</code> and a two digit numeric value if
   * <code>numericMonthP</code> is <code>true</code>. The value <code>false</code> is recommended.
   *
   * @param timezone
   * @param numericMonthP
   * @return String
   */
  public String calendarDateToDateString(double timezone, boolean numericMonthP) {
    {
      CalendarDate date = this;

      {
        int year = Stella.NULL_INTEGER;
        int month = Stella.NULL_INTEGER;
        int day = Stella.NULL_INTEGER;
        Keyword dow = null;

        {
          Object[] caller_MV_returnarray = new Object[3];

          year = date.getCalendarDate(timezone, caller_MV_returnarray);
          month = ((int) (((IntegerWrapper) (caller_MV_returnarray[0])).wrapperValue));
          day = ((int) (((IntegerWrapper) (caller_MV_returnarray[1])).wrapperValue));
          dow = ((Keyword) (caller_MV_returnarray[2]));
        }
        dow = dow;
        {
          String yearString =
              ((year < 0)
                  ? (Native.integerToString(0 - year) + "BC")
                  : Native.integerToString(year));
          String monthString =
              (numericMonthP
                  ? Stella.formatWithPadding(
                      Native.integerToString(month), 2, '0', Stella.KWD_RIGHT, false)
                  : StringWrapper.unwrapString(
                      ((StringWrapper) ((Stella.$MONTH_ABBREVIATION_VECTOR$.theArray)[month]))));

          return (yearString
              + "-"
              + monthString
              + "-"
              + Stella.formatWithPadding(
                  Native.integerToString(day), 2, '0', Stella.KWD_RIGHT, false));
        }
      }
    }
  }