Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.mirek.diabetapp.models;
- import android.util.Log;
- import com.google.firebase.auth.FirebaseAuth;
- import com.google.firebase.auth.FirebaseUser;
- import com.google.firebase.database.DataSnapshot;
- import com.google.firebase.database.DatabaseError;
- import com.google.firebase.database.DatabaseReference;
- import com.google.firebase.database.FirebaseDatabase;
- import com.google.firebase.database.ValueEventListener;
- import com.jjoe64.graphview.series.DataPoint;
- import com.jjoe64.graphview.series.LineGraphSeries;
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import java.util.ArrayList;
- import java.util.Date;
- public class ResultsData {
- private FirebaseDatabase mFirebaseDatabase;
- private DatabaseReference mDatabaseReference;
- private FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
- private DataPoint[] results;
- public DataPoint[] Results(){
- mFirebaseDatabase = FirebaseDatabase.getInstance();
- mDatabaseReference = mFirebaseDatabase.getReference();
- Log.e("1","1");
- readData(new FirebaseCallback() {
- @Override
- public void onCallback(DataPoint[] value) {
- Log.e("value",value.toString());
- results = value;
- Log.e("2","2");
- }
- });
- Log.e("3","3");
- if(results != null) {
- Log.e("results",results.toString());
- return results;
- }
- return results;
- }
- private void readData(final FirebaseCallback firebaseCallback) {
- mDatabaseReference.child("users").child(user.getUid()).child("diabetes").addListenerForSingleValueEvent(new ValueEventListener() {
- @Override
- public void onDataChange(DataSnapshot dataSnapshot) {
- //long timeFrom = dateFrom.getTime(), timeTo = dateTo.getTime();
- ArrayList<DataPoint> dpArrayList = new ArrayList<>();
- for (DataSnapshot mDataSnapshot : dataSnapshot.getChildren()) {
- String data = mDataSnapshot.getKey();
- Log.e("data",data);
- try{
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MM dd yyyy hh:mm");
- Date xValue = simpleDateFormat.parse(data);
- //long time = xValue.getTime();
- //if(time>= timeFrom && time <= timeTo){
- try {
- double value = Double.parseDouble(mDataSnapshot.getValue(String.class));
- Log.e("value",String.valueOf(value));
- dpArrayList.add(new DataPoint(xValue,value));
- } catch (NumberFormatException ex) {
- ex.printStackTrace();
- }
- //}
- } catch (ParseException e) {
- e.printStackTrace();
- }
- }
- DataPoint[] dp = dpArrayList.toArray(new DataPoint[dpArrayList.size()]);
- firebaseCallback.onCallback(dp);
- //series.resetData(dp);
- }
- @Override
- public void onCancelled(DatabaseError databaseError) {
- }
- }
- );
- }
- public interface FirebaseCallback {
- void onCallback(DataPoint[] value);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement