I've been having trouble the last week or so retrieving data from my Firebase database. I've searched all over StackOverflow and google for the answer to this and either I'm not understanding the solutions being presented or they simply aren't working for me. Everything is being called successfully until I get to the valueEventListener. I've logged everything and it never triggers. The error handler doesn't return any errors.
public class DBHandler {
private FirebaseAuth mAuth = FirebaseAuth.getInstance();
private String key;
public ArrayList<String>tips,tables,times;
private DatabaseReference mDatabase;
private DatabaseReference mRootRef = FirebaseDatabase.getInstance().getReference();
private DatabaseReference mPostRef = mRootRef.child("user-posts");
private DatabaseReference mIdRef = mPostRef.child(mAuth.getCurrentUser().getUid());
private DatabaseReference mKeyRef;//move down
private DatabaseReference mTimeRef;
private DatabaseReference mTipRef;
private DatabaseReference mTableRef;
public DBHandler(){
//Constructor
}
public DBHandler(String key) {
tips(key);
Log.d("Test for tips()", "Triggered");
}
public void tips(String key){
mKeyRef = mIdRef.child(key);
mTipRef = mKeyRef.child("tips");
Log.d("Test for reference", "mTipRef: " + mTipRef.getRef());
mTipRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Log.d("Test for listener", "Triggered");
ArrayList<String> placeholder= new ArrayList<String>();
placeholder = dataSnapshot.getValue(ArrayList.class);
Log.d("Test for placeholder", "placeholder: " + placeholder);
tipsHolder(placeholder);
}
@Override
public void onCancelled(DatabaseError databaseError) { }
});
}
private void tipsHolder(ArrayList<String> placeholder) {
this.tips = placeholder;
}
public void times(String key){ }
public void tables(String key){ }
public void tablesHolder(ArrayList<String> placeholder){ }
public void timesHolder(ArrayList<String> placeholder){ }
}
Thanks in advance to any and everyone who attempts to help me resolve this headache.