public void registerChangeListener(final Object lifecycleRef, final Consumer<PersistableFolder> listener) {

        //currently, this folders location can only change if it is based on a Public Folder
        if (getRootPersistableFolder() != null) {
            getRootPersistableFolder().registerChangeListener(lifecycleRef, listener);
        }
    }
registers a listener which is fired each time the actual location of this folder changes
main/src/main/java/cgeo/geocaching/storage/Folder.java