I need to return an object
that was set in methodB()
, I have tried a lot and searched also :
interface A{}
interface B{}
class Main{
Object method(){
Object o;
new A(){
methodA(){
new B(){
methodB(){
// how to use setters of o here?
}
}
}
}
return o;// o should contain the values set in methodB()
}
}
My actual code
public ImageUtil saveImagetoStorage() {
final ImageUtil imageUtil[] = new ImageUtil[1];
filepath.putFile(mPublishedImageUri).addOnCompleteListener(new OnCompleteListener<UploadTask.TaskSnapshot>() {
@Override
public void onComplete(@NonNull final Task<UploadTask.TaskSnapshot> task) {
UploadTask uploadTask = FirebaseUtil.sStorageReference.child(thumbs)
.child(randomName + ".jpg").putBytes(thumbData);
uploadTask.addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
String downloadthumbUri = taskSnapshot.getDownloadUrl().toString();
imageUtil[0]=new ImageUtil();
imageUtil[0].setImgUrl(downloadUri);
imageUtil[0].setImgThumb(downloadthumbUri);
}
});
}
});
return imageUtil[0];
}
Am I missing anything? Thanks in advance.