I have some class application class extending Application. I use it as a controller  for filling the database and perfoming REST calls. There is an interface:
private OnDBfilled onFilledListener;
...
public void setOnFilledListener(OnDBfilled onFilledListener) {
    this.onFilledListener = onFilledListener;
}
public interface OnDBfilled {
    void onFilledCallback();
}
...
When I've got required  data  call it  to get known the Fragment, that data was successfully load from the internet and filled to database:
@Override
        public void onResponse(Call call, Response response) throws IOException {
...//working with data
onFilledListener.onFilledCallback();
}
For the first time, when the call is done and database is filled I can see the result in the log:
private Application controller;
private Application.OnDBfilled listener;
...
controller = new Application();
listener = new Application.OnDBfilled() {
        @Override
        public void onFilledCallback() {
            System.out.println("bd is filled. replacing fragments initiated editianal");
            replaceFragment();
        }
    };
 controller.setOnFilledListener(listener);
This works fine and I can see the  logging message. But  when I'm  trying to do in  the  another fragment, I've  got Null Pointer Exception in this line:
 onFilledListener.onFilledCallback();
Here's code of another fragment, but it's almost equal:
  private Application controller;
private Application.OnDBfilled filledDBListener;
...
//onCreateView
controller = new Application();
    filledDBListener = new Application.OnDBfilled() {
        @Override
        public void onFilledCallback() {
            swipeRefreshLayout.setRefreshing(false);
           // fillEventListFromBD(UserData.getCity(getActivity()));
        }
    };
    controller.setOnFilledListener(filledDBListener);
Any suggestions? Thanks!
 
    