public static <T> PermissionAction<T> register(@NonNull final ComponentActivity activity, @NonNull final PermissionContext pCtx, @Nullable final Consumer<T> callback) {
        checkActivityObject(activity);
        return new PermissionAction<>(activity, pCtx, callback);
    }
creates and registers a permission action with an Activity
main/src/main/java/cgeo/geocaching/permission/PermissionAction.java