Example usage for org.joda.time DateTime getMillis

List of usage examples for org.joda.time DateTime getMillis

Introduction

In this page you can find the example usage for org.joda.time DateTime getMillis.

Prototype

public long getMillis() 

Source Link

Document

Gets the milliseconds of the datetime instant from the Java epoch of 1970-01-01T00:00:00Z.

Usage

From source file:com.auditbucket.search.model.MetaSearchChange.java

License:Open Source License

public void setWhen(DateTime when) {
    if ((when != null) && (when.getMillis() != 0))
        this.when = when.getMillis();
    else/* w w  w.  ja v a 2 s.c  o  m*/
        this.when = 0l;
}

From source file:com.barchart.feed.ddf.message.enums.DDF_TradeDay.java

License:BSD License

/**
 * recover full trade date from DDF day code and todays date
 * //  www  .  ja  va2  s. com
 * expressed in UTC zone
 * 
 * year, month, day : should be treated as local market trade date.
 *
 * @param tradeDay the trade day
 * @param todayDate the today date
 * @return the time value
 */
public static TimeValue tradeDateFrom(final DDF_TradeDay tradeDay, final DateTime todayDate) {

    // trading day of month reported by the feed
    final int tradingDayNum = tradeDay.day;

    // current day of month
    final int currentDayNum = todayDate.getDayOfMonth();

    // positive for same month if trading date is in the future
    // unless day enum is not a day in the month ???
    final int difference = tradingDayNum - currentDayNum;

    final boolean isSmall = Math.abs(difference) <= HOLIDAY_THESHOLD;
    final boolean isLarge = !isSmall;

    //

    final boolean isSameMonthSameDay = (difference == 0);

    final boolean isSameMonthPastDay = difference < 0 & isSmall;
    final boolean isSameMonthNextDay = difference > 0 & isSmall;

    final boolean isPastMonthPastDay = difference > 0 & isLarge;
    final boolean isNextMonthNextDay = difference < 0 & isLarge;

    //

    DateTime generated;

    try {
        if (isSameMonthSameDay) {
            generated = todayDate;
        } else if (isSameMonthPastDay) {
            generated = todayDate.withDayOfMonth(tradingDayNum);
        } else if (isSameMonthNextDay) {
            generated = todayDate.withDayOfMonth(tradingDayNum);
        } else if (isPastMonthPastDay) {
            generated = todayDate.minusMonths(1).withDayOfMonth(tradingDayNum);
        } else if (isNextMonthNextDay) {
            generated = todayDate.plusMonths(1).withDayOfMonth(tradingDayNum);
        } else {
            logger.error("should not happen");
            generated = todayDate;
        }
    } catch (final Exception e) {
        generated = todayDate;
    }

    final DateTime result = new DateTime(//
            generated.getYear(), //
            generated.getMonthOfYear(), //
            generated.getDayOfMonth(), //
            0, 0, 0, 0, ZONE_UTC);

    final long millisUTC = result.getMillis();

    return ValueBuilder.newTime(millisUTC);

}

From source file:com.barchart.feed.ddf.message.provider.BaseEOD.java

License:BSD License

protected final void decodeDay(final ByteBuffer buffer) {

    final int month = decodeInt(buffer, 2);
    check(buffer.get(), SLASH);//  ww  w .j  a va2 s  . c  o m
    final int day = decodeInt(buffer, 2);
    check(buffer.get(), SLASH);
    final int year = decodeInt(buffer, 4);
    check(buffer.get(), COMMA);

    final DateTime date = new DateTime(year, month, day, 0, 0, 0, DateTimeZone.UTC);

    setTradeDay(DDF_TradeDay.fromMillisUTC(date.getMillis()));

}

From source file:com.barchart.feed.ddf.message.provider.CodecHelper.java

License:BSD License

static final long decodeMillisUTC(final DateTimeZone zone, final ByteBuffer buffer) {
    final DateTime dateTime = decodeTimeStamp(zone, buffer);
    return dateTime.getMillis();
}

From source file:com.barchart.feed.ddf.util.HelperDDF.java

License:BSD License

/**
 * from ddf "20100616124807" into millisUTC.
 * //w  ww . j ava 2 s . com
 * @param value
 *            the value
 * @param zone
 *            the zone
 * @return the long
 */
public static final long timeDecode(/* local */long value, final DateTimeZone zone) {

    final int second = (int) (value % 100);
    value /= 100;
    final int minute = (int) (value % 100);
    value /= 100;
    final int hour = (int) (value % 100);
    value /= 100;
    final int day = (int) (value % 100);
    value /= 100;
    final int month = (int) (value % 100);
    value /= 100;
    final int year = (int) value;
    final DateTime dateTime = new DateTime(year, month, day, hour, minute, second, 0, zone);
    return dateTime.getMillis();

}

From source file:com.barchart.feed.ddf.util.HelperXML.java

License:BSD License

/**
 * Xml time decode./*from w  w  w .  ja  v a 2s  .  c om*/
 * 
 * @param tag
 *            the tag
 * @param attribute
 *            the attribute
 * @param isThrow
 *            the is throw
 * @return the time value
 */
public static final Time xmlTimeDecode(final Element tag, final String attribute, final boolean isThrow) {

    final String timeValue = xmlStringDecode(tag, attribute, isThrow);

    if (timeValue == null || timeValue.length() == 0) {
        return Time.NULL;
    }

    try {
        final DateTime dateTime = new DateTime(timeValue);
        return factory.newTime(dateTime.getMillis(), "");
    } catch (final Exception e) {
        if (isThrow) {
            throw new IllegalArgumentException("attribute not valid : " + attribute);
        } else {
            return Time.NULL;
        }
    }

}

From source file:com.barchart.feed.ddf.util.HelperXML.java

License:BSD License

/**
 * Xml time decode.// www .  j ava2s . co m
 * 
 * @param atr
 *            the atr
 * @param attribute
 *            the attribute
 * @param isThrow
 *            the is throw
 * @return the time value
 */
public static final Time xmlTimeDecode(final Attributes atr, final String attribute, final boolean isThrow) {

    final String timeValue = xmlStringDecode(atr, attribute, isThrow);

    if (timeValue == null || timeValue.length() == 0) {
        return Time.NULL;
    }

    try {
        final DateTime dateTime = new DateTime(timeValue);
        return factory.newTime(dateTime.getMillis(), "");
    } catch (final Exception e) {
        if (isThrow) {
            throw new IllegalArgumentException("attribute not valid : " + attribute);
        } else {
            return Time.NULL;
        }
    }

}

From source file:com.battlelancer.seriesguide.settings.TraktSettings.java

License:Apache License

/**
 * Store last collected and watchlisted timestamps.
 *///from   www  . j a v  a 2s. c o  m
public static void storeLastMoviesChangedAt(Context context, DateTime collectedAt, DateTime watchlistedAt) {
    PreferenceManager.getDefaultSharedPreferences(context).edit()
            .putLong(TraktSettings.KEY_LAST_MOVIES_COLLECTED_AT, collectedAt.getMillis())
            .putLong(TraktSettings.KEY_LAST_MOVIES_WATCHLISTED_AT, watchlistedAt.getMillis()).commit();
}

From source file:com.battlelancer.seriesguide.ui.MovieDetailsFragment.java

License:Apache License

private void populateMovieViews() {
    /**//  www.j  a  va2s  .  c  o m
     * Ensure to take title, overview and poster from TMDb as they are localized.
     * Get release time from trakt.
     */
    final Ratings traktRatings = mMovieDetails.traktRatings();
    final com.uwetrottmann.tmdb.entities.Movie tmdbMovie = mMovieDetails.tmdbMovie();
    final boolean inCollection = mMovieDetails.inCollection;
    final boolean inWatchlist = mMovieDetails.inWatchlist;
    final DateTime released = mMovieDetails.released;
    final int rating = mMovieDetails.userRating;

    mMovieTitle.setText(tmdbMovie.title);
    mMovieDescription.setText(tmdbMovie.overview);

    // release date and runtime: "July 17, 2009 | 95 min"
    StringBuilder releaseAndRuntime = new StringBuilder();
    if (released != null && released.getMillis() != 0) {
        releaseAndRuntime.append(
                DateUtils.formatDateTime(getActivity(), released.getMillis(), DateUtils.FORMAT_SHOW_DATE));
        releaseAndRuntime.append(" | ");
    }
    releaseAndRuntime.append(getString(R.string.runtime_minutes, tmdbMovie.runtime));
    mMovieReleaseDate.setText(releaseAndRuntime.toString());

    // check-in button
    final String title = tmdbMovie.title;
    mCheckinButton.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            // display a check-in dialog
            MovieCheckInDialogFragment f = MovieCheckInDialogFragment.newInstance(mTmdbId, title);
            f.show(getFragmentManager(), "checkin-dialog");
            fireTrackerEvent("Check-In");
        }
    });
    CheatSheet.setup(mCheckinButton);

    // hide watched button (currently not supported)
    mWatchedButton.setVisibility(View.GONE);

    // collected button
    Utils.setCompoundDrawablesRelativeWithIntrinsicBounds(mCollectedButton, 0,
            inCollection ? R.drawable.ic_collected
                    : Utils.resolveAttributeToResourceId(getActivity().getTheme(), R.attr.drawableCollect),
            0, 0);
    mCollectedButton.setText(inCollection ? R.string.action_collection_remove : R.string.action_collection_add);
    CheatSheet.setup(mCollectedButton,
            inCollection ? R.string.action_collection_remove : R.string.action_collection_add);
    mCollectedButton.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            // disable button, will be re-enabled on data reload once action completes
            v.setEnabled(false);
            if (inCollection) {
                MovieTools.removeFromCollection(getActivity(), mTmdbId);
                fireTrackerEvent("Uncollected movie");
            } else {
                MovieTools.addToCollection(getActivity(), mTmdbId);
                fireTrackerEvent("Collected movie");
            }
        }
    });
    mCollectedButton.setEnabled(true);

    // watchlist button
    Utils.setCompoundDrawablesRelativeWithIntrinsicBounds(mWatchlistedButton, 0,
            inWatchlist ? R.drawable.ic_listed
                    : Utils.resolveAttributeToResourceId(getActivity().getTheme(), R.attr.drawableList),
            0, 0);
    mWatchlistedButton.setText(inWatchlist ? R.string.watchlist_remove : R.string.watchlist_add);
    CheatSheet.setup(mWatchlistedButton, inWatchlist ? R.string.watchlist_remove : R.string.watchlist_add);
    mWatchlistedButton.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            // disable button, will be re-enabled on data reload once action completes
            v.setEnabled(false);
            if (inWatchlist) {
                MovieTools.removeFromWatchlist(getActivity(), mTmdbId);
                fireTrackerEvent("Unwatchlist movie");
            } else {
                MovieTools.addToWatchlist(getActivity(), mTmdbId);
                fireTrackerEvent("Watchlist movie");
            }
        }
    });
    mWatchlistedButton.setEnabled(true);

    // show button bar
    mButtonContainer.setVisibility(View.VISIBLE);

    // ratings
    mRatingsTmdbValue.setText(TmdbTools.buildRatingValue(tmdbMovie.vote_average));
    if (traktRatings != null) {
        mRatingsTraktVotes.setText(TraktTools.buildRatingVotesString(getActivity(), traktRatings.votes));
        mRatingsTraktValue.setText(TraktTools.buildRatingString(traktRatings.rating));
    }
    // if movie is not in database, can't handle user ratings
    if (!inCollection && !inWatchlist) {
        mRatingsTraktUserLabel.setVisibility(View.GONE);
        mRatingsTraktUserValue.setVisibility(View.GONE);
        mRatingsContainer.setClickable(false);
    } else {
        mRatingsTraktUserLabel.setVisibility(View.VISIBLE);
        mRatingsTraktUserValue.setVisibility(View.VISIBLE);
        mRatingsTraktUserValue.setText(TraktTools.buildUserRatingString(getActivity(), rating));
        mRatingsContainer.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                rateMovie();
            }
        });
        CheatSheet.setup(mRatingsContainer, R.string.action_rate);
    }
    mRatingsContainer.setVisibility(View.VISIBLE);

    // genres
    Utils.setValueOrPlaceholder(mMovieGenres, TmdbTools.buildGenresString(tmdbMovie.genres));

    // trakt comments link
    mCommentsButton.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            Intent i = new Intent(getActivity(), TraktCommentsActivity.class);
            i.putExtras(TraktCommentsActivity.createInitBundleMovie(title, mTmdbId));
            ActivityCompat.startActivity(getActivity(), i, ActivityOptionsCompat
                    .makeScaleUpAnimation(v, 0, 0, v.getWidth(), v.getHeight()).toBundle());
            fireTrackerEvent("Comments");
        }
    });

    // load poster, cache on external storage
    if (!TextUtils.isEmpty(tmdbMovie.poster_path)) {
        ServiceUtils.getPicasso(getActivity()).load(mImageBaseUrl + tmdbMovie.poster_path)
                .into(mMoviePosterBackground);
    }
}

From source file:com.battlelancer.seriesguide.util.TimeTools.java

License:Apache License

/**
 * Calculates the episode release date time as a millisecond instant. Adjusts for time zone
 * effects on release time, e.g. delays between time zones (e.g. in the United States) and DST.
 *
 * @param showTimeZone See {@link #getDateTimeZone(String)}.
 * @param showReleaseTime See {@link #getShowReleaseTime(int)}.
 * @return -1 if no conversion was possible. Otherwise, any other long value (may be negative!).
 */// ww  w. j  a va  2 s  . c o m
public static long parseEpisodeReleaseDate(@NonNull DateTimeZone showTimeZone, @Nullable String releaseDate,
        @NonNull LocalTime showReleaseTime, @Nullable String showCountry, @NonNull String deviceTimeZone) {
    if (releaseDate == null || releaseDate.length() == 0) {
        return Constants.EPISODE_UNKNOWN_RELEASE;
    }

    // get date
    LocalDate localDate;
    try {
        localDate = TVDB_DATE_FORMATTER.parseLocalDate(releaseDate);
    } catch (IllegalArgumentException e) {
        // date string could not be parsed
        Timber.e(e, "TheTVDB date could not be parsed: " + releaseDate);
        return Constants.EPISODE_UNKNOWN_RELEASE;
    }

    // set time
    LocalDateTime localDateTime = localDate.toLocalDateTime(showReleaseTime);

    localDateTime = handleHourPastMidnight(showCountry, localDateTime);
    localDateTime = handleDstGap(showTimeZone, localDateTime);

    // finally get a valid datetime in the show time zone
    DateTime dateTime = localDateTime.toDateTime(showTimeZone);

    // handle time zone effects on release time for US shows (only if device is set to US zone)
    if (deviceTimeZone.startsWith(TIMEZONE_ID_PREFIX_AMERICA)) {
        dateTime = applyUnitedStatesCorrections(showCountry, deviceTimeZone, dateTime);
    }

    return dateTime.getMillis();
}