Skip to content

Instantly share code, notes, and snippets.

View SubhrajyotiSen's full-sized avatar

Subhrajyoti Sen SubhrajyotiSen

View GitHub Profile
compile "android.arch.lifecycle:extensions:1.0.0"
compile "android.arch.persistence.room:runtime:1.0.0"
annotationProcessor "android.arch.lifecycle:compiler:1.0.0"
annotationProcessor "android.arch.persistence.room:compiler:1.0.0"
//..
allprojects {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
}
//..
import java.util.Date;
@Entity
public class BorrowModel {
@PrimaryKey(autoGenerate = true)
public int id;
private String itemName;
private String personName;
@TypeConverters(DateConverter.class)
private Date borrowDate;
import java.util.Date;
class DateConverter {
@TypeConverter
public static Date toDate(Long timestamp) {
return timestamp == null ? null : new Date(timestamp);
}
@TypeConverter
public static Long toTimestamp(Date date) {
@Dao
@TypeConverters(DateConverter.class)
public interface BorrowModelDao {
@Query("select * from BorrowModel")
LiveData<List<BorrowModel>> getAllBorrowedItems();
@Query("select * from BorrowModel where id = :id")
BorrowModel getItembyId(String id);
@Database(entities = {BorrowModel.class}, version = 1)
public abstract class AppDatabase extends RoomDatabase {
private static AppDatabase INSTANCE;
public static AppDatabase getDatabase(Context context) {
if (INSTANCE == null) {
INSTANCE =
Room.databaseBuilder(context.getApplicationContext(), AppDatabase.class, "borrow_db")
.build();
public class BorrowedListViewModel extends AndroidViewModel {
private final LiveData<List<BorrowModel>> itemAndPersonList;
private AppDatabase appDatabase;
public BorrowedListViewModel(Application application) {
super(application);
public class MainActivity extends AppCompatActivity implements View.OnLongClickListener {
private BorrowedListViewModel viewModel;
private RecyclerViewAdapter recyclerViewAdapter;
private RecyclerView recyclerView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
public class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewAdapter.RecyclerViewHolder> {
private List<BorrowModel> borrowModelList;
private View.OnLongClickListener longClickListener;
public RecyclerViewAdapter(List<BorrowModel> borrowModelList, View.OnLongClickListener longClickListener) {
this.borrowModelList = borrowModelList;
this.longClickListener = longClickListener;
}
#include<bits/stdc++.h>
using namespace std;
#define FOR(i,n,a) for(int i=a;i<=n;i++)
#define FORN(i,n,a) for(int i=a;i<n;i++)
typedef long long ll;
int main() {
ios_base::sync_with_stdio(false);