class RuleDatabaseItemUpdateRunnable implements Runnable {

    boolean shouldDownload() {
        if (item.state == Configuration.Item.STATE_IGNORE) {
            return false;
        }

        // Not sure if that is slow or not.
        if (item.location.startsWith("content:/")) {
            return true;
        }

        file = FileHelper.getItemFile(context, item);
        if (file == null || !item.isDownloadable()) {
            return false;
        }

        try {
            url = new URL(item.location);
        } catch (MalformedURLException e) {
            parentTask.addError(item, context.getString(R.string.invalid_url_s, item.location));
            return false;
        }

        return true;
    }

      RuleDatabaseItemUpdateRunnable(@NonNull RuleDatabaseUpdateTask parentTask, @NonNull Context context, @NonNull Configuration.Item item);

}