package com.jdroid.android.sample.ui.firebase.database; import android.os.Bundle; import android.view.View; import android.widget.TextView; import com.jdroid.android.fragment.AbstractFragment; import com.jdroid.android.sample.R; import com.jdroid.java.concurrent.ExecutorUtils; import com.jdroid.java.utils.LoggerUtils; import com.jdroid.java.utils.RandomUtils; import org.slf4j.Logger; import java.util.List; public class FirebaseDatabaseFragment extends AbstractFragment { private static final Logger LOGGER = LoggerUtils.getLogger(FirebaseDatabaseFragment.class); private SampleFirebaseRepository repository; private static String lastId; @Override public Integer getContentFragmentLayout() { return R.layout.firebase_database_fragment; } @Override public void onViewCreated(View view, Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); repository = new SampleFirebaseRepository(); findView(R.id.firebaseCreate).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { ExecutorUtils.execute(new Runnable() { @Override public void run() { SampleFirebaseEntity entity = new SampleFirebaseEntity(); lastId = RandomUtils.getLong().toString(); entity.setId(lastId); entity.setField(RandomUtils.getLong().toString()); repository.add(entity); } }); } }); findView(R.id.firebaseUpdate).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { ExecutorUtils.execute(new Runnable() { @Override public void run() { SampleFirebaseEntity entity = new SampleFirebaseEntity(); entity.setId(lastId); entity.setField(RandomUtils.getLong().toString()); repository.update(entity); } }); } }); findView(R.id.firebaseGetAll).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { ExecutorUtils.execute(new Runnable() { @Override public void run() { final List<SampleFirebaseEntity> results = repository.getAll(); executeOnUIThread(new Runnable() { @Override public void run() { ((TextView)findView(R.id.results)).setText(results.toString()); } }); } }); } }); findView(R.id.firebaseRemove).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { ExecutorUtils.execute(new Runnable() { @Override public void run() { repository.remove(lastId); lastId = null; } }); } }); } }