/*
- * Copyright (C) 2016 Roland Haeder
+ * Copyright (C) 2016, 2017 Roland Häder
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
package org.mxchange.jusercore.model.user.activity;
import java.text.MessageFormat;
-import java.util.Calendar;
+import java.util.Date;
import java.util.Objects;
import javax.persistence.Basic;
import javax.persistence.CascadeType;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;
-import org.mxchange.jcontacts.contact.title.PersonalTitle;
+import org.mxchange.jcontacts.model.contact.title.PersonalTitle;
import org.mxchange.jusercore.model.user.LoginUser;
import org.mxchange.jusercore.model.user.User;
/**
- * A POJO for user acitivity log
+ * A POJO for user activity log
* <p>
- * @author Roland Haeder<roland@mxchange.org>
+ * @author Roland Häder<roland@mxchange.org>
*/
@Entity (name = "user_activity_log")
@Table (
@NamedQueries (
{
@NamedQuery (name = "AllUserActivityLog", query = "SELECT a FROM user_activity_log AS a ORDER BY a.activityId DESC"),
- @NamedQuery (name = "FindAllUsersActivity", query = "SELECT a FROM user_activity_log AS a WHERE a.activityUser = :activityUser ORDER BY a.activityId DESC"),
- @NamedQuery (name = "FindAllActivityByType", query = "SELECT a FROM user_activity_log AS a WHERE a.activityType LIKE :activityType ORDER BY a.activityId DESC"),
- @NamedQuery (name = "FindUsersActivityByType", query = "SELECT a FROM user_activity_log AS a WHERE a.activityUser = :activityUser AND a.activityType LIKE :activityType ORDER BY a.activityId DESC"),
- @NamedQuery (name = "FindAllActivityByMultipleTypes", query = "SELECT a FROM user_activity_log AS a WHERE a.activityType IN :activityTypes ORDER BY a.activityId DESC"),
- @NamedQuery (name = "FindUsersActivityByMultipleTypes", query = "SELECT a FROM user_activity_log AS a WHERE a.activityUser = :activityUser AND a.activityType IN :activityTypes ORDER BY a.activityId DESC")
+ @NamedQuery (name = "SearchAllUsersActivity", query = "SELECT a FROM user_activity_log AS a WHERE a.activityUser = :activityUser ORDER BY a.activityId DESC")
}
)
@SuppressWarnings ("PersistenceUnitPresent")
@Basic (optional = false)
@Temporal (TemporalType.TIMESTAMP)
@Column (name = "activity_timestamp", nullable = false, updatable = false)
- private Calendar activityTimestamp;
+ private Date activityTimestamp;
/**
* Type
/**
* Constructor with message, type and user
* <p>
- * @param activityMessage Message
- * @param activityType Type
- * @param activityUser User instance
+ * @param activityMessage Message
+ * @param activityType Type
+ * @param activityUser User instance
* @param activityTimestamp imestamp
*/
- public UserActivityLog (final String activityMessage, final String activityType, final User activityUser, final Calendar activityTimestamp) {
+ public UserActivityLog (final String activityMessage, final String activityType, final User activityUser, final Date activityTimestamp) {
// Call other constructor
this(activityType, activityUser, activityTimestamp);
/**
* Constructor with type, user and timestamp
* <p>
- * @param activityType Type
- * @param activityUser User instance
+ * @param activityType Type
+ * @param activityUser User instance
* @param activityTimestamp imestamp
*/
- public UserActivityLog (final String activityType, final User activityUser, final Calendar activityTimestamp) {
+ public UserActivityLog (final String activityType, final User activityUser, final Date activityTimestamp) {
// Make sure all is set
if (null == activityType) {
// Throw NPE
/**
* Constructor with message, type, user, timestamp and principal name
* <p>
- * @param activityMessage Message
- * @param activityType Type
- * @param activityUser User instance
+ * @param activityMessage Message
+ * @param activityType Type
+ * @param activityUser User instance
* @param activityTimestamp imestamp
- * @param principalName Principal name
+ * @param principalName Principal name
*/
- public UserActivityLog (final String activityMessage, final String activityType, final User activityUser, final Calendar activityTimestamp, final String principalName) {
+ public UserActivityLog (final String activityMessage, final String activityType, final User activityUser, final Date activityTimestamp, final String principalName) {
// Call other constructor
this(activityMessage, activityType, activityUser, activityTimestamp);
/**
* Consctructor with type, user, timestamp and principal name
* <p>
- * @param activityType Type
- * @param activityUser User instance
+ * @param activityType Type
+ * @param activityUser User instance
* @param activityTimestamp imestamp
- * @param principalName Principal name
+ * @param principalName Principal name
*/
- public UserActivityLog (final String activityType, final User activityUser, final Calendar activityTimestamp, final String principalName) {
+ public UserActivityLog (final String activityType, final User activityUser, final Date activityTimestamp, final String principalName) {
// Call other constructor
this(activityType, activityUser, activityTimestamp);
@Override
@SuppressWarnings ("ReturnOfDateField")
- public Calendar getActivityTimestamp () {
+ public Date getActivityTimestamp () {
return this.activityTimestamp;
}
@Override
@SuppressWarnings ("AssignmentToDateFieldFromParameter")
- public void setActivityTimestamp (final Calendar activityTimestamp) {
+ public void setActivityTimestamp (final Date activityTimestamp) {
this.activityTimestamp = activityTimestamp;
}