package com.novoda.data;
import com.google.auto.value.AutoValue;
@AutoValue
public abstract class SyncedData<T> {
public static <T> SyncedData<T> from(T data, SyncState syncState, long lastSyncAction) {
return new AutoValue_SyncedData<>(data, syncState, lastSyncAction);
}
SyncedData() {
// AutoValue best practices https://github.com/google/auto/blob/master/value/userguide/practices.md
}
public abstract T data();
public abstract SyncState syncState();
public abstract long lastSyncAction();
}