how to return from void inbuilt methods in android

Viewed 32

I want to return value from the inbuilt void method. How can I do so?

code

 public static boolean upload(DatabaseReference reference, String path, String userUid, String value)
    {

        reference.child(path).setValue(value).addOnSuccessListener(new OnSuccessListener<Void>() {
            @Override
            public void onSuccess(Void unused) {
                return true;
            }
        })

        return false;
    }

Error:

Cannot return a value from a method with void result type

Edit:

Actually, the code that I am currently using which is not readable at all I know is

  DatabaseReference reference = mDatabase.getReference().child(FirebaseVar.USERS).child(mUser.getUid());

                        reference.child(FirebaseVar.NAME).setValue(binding.nameSignUp.getText().toString()).addOnSuccessListener(new OnSuccessListener<Void>() {
                            @Override
                            public void onSuccess(Void unused) {
                                reference.child(FirebaseVar.ROLE).setValue(selectedRoles).addOnSuccessListener(new OnSuccessListener<Void>() {
                                    @Override
                                    public void onSuccess(Void unused) {
                                        reference.child(FirebaseVar.BRANCH).setValue(selectedBranch).addOnSuccessListener(new OnSuccessListener<Void>() {
                                            @Override
                                            public void onSuccess(Void unused) {
                                                reference.child(FirebaseVar.HOSTEL).setValue(selectedHostels).addOnSuccessListener(new OnSuccessListener<Void>() {
                                                    @Override
                                                    public void onSuccess(Void unused) {
                                                        reference.child(FirebaseVar.GENDER).setValue(checkedbutton.getText().toString()).addOnSuccessListener(new OnSuccessListener<Void>() {
                                                            @Override
                                                            public void onSuccess(Void unused) {
                                                                Toast.makeText(SignUpDetailActivity.this, "Success", Toast.LENGTH_SHORT).show();
                                                            }
                                                        });
                                                    }
                                                });
                                            }
                                        });
                                    }
                                });
                            }
                        });

SO my question is how to improve my given code?

0 Answers
Related