Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pom-dependency-tree.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
ai.elimu:webapp:war:2.6.15-SNAPSHOT
ai.elimu:webapp:war:2.6.16-SNAPSHOT
+- ai.elimu:model:jar:model-2.0.97:compile
| \- com.google.code.gson:gson:jar:2.13.0:compile
| \- com.google.errorprone:error_prone_annotations:jar:2.37.0:compile
Expand Down
52 changes: 52 additions & 0 deletions src/main/java/ai/elimu/entity/analytics/AssessmentEvent.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
package ai.elimu.entity.analytics;

import ai.elimu.entity.BaseEntity;
import ai.elimu.entity.application.Application;
import jakarta.persistence.Column;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.MappedSuperclass;
import jakarta.persistence.Temporal;
import jakarta.persistence.TemporalType;
import jakarta.validation.constraints.NotNull;
import java.util.Calendar;
import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
@MappedSuperclass
public abstract class AssessmentEvent extends BaseEntity {

@NotNull
@Temporal(TemporalType.TIMESTAMP)
private Calendar timestamp;

/**
* See https://developer.android.com/reference/android/provider/Settings.Secure#ANDROID_ID
*/
@NotNull
private String androidId;

/**
* The package name of the {@link #application} where the assessment event occurred.
*/
@NotNull
private String packageName;

/**
* This field will only be populated if a corresponding {@link Application} can be found in the database for the {@link #packageName}.
*/
@ManyToOne
private Application application;

/**
* Any additional data should be stored in the format of a JSON object.
*
* Example:
* <pre>
* {'word_ids_presented': [1,2,3], 'word_id_selected': 2}
* </pre>
*/
@Column(length = 1024)
private String additionalData;
}