class RuleDatabaseItemUpdateRunnable implements Runnable {

    boolean validateResponse(HttpURLConnection connection) throws IOException {
        Log.d(TAG, "validateResponse: " + item.title + ": local = " + new Date(connection.getIfModifiedSince()) + " remote = " + new Date(connection.getLastModified()));
        if (connection.getResponseCode() != 200) {
            Log.d(TAG, "validateResponse: " + item.title + ": Skipping: Server responded with " + connection.getResponseCode() + " for " + item.location);

            if (connection.getResponseCode() == 404) {
                parentTask.addError(item, context.getString(R.string.file_not_found));
            } else if (connection.getResponseCode() != 304) {
                context.getResources().getString(R.string.host_update_error_item);
                parentTask.addError(item, context.getResources().getString(R.string.host_update_error_item, connection.getResponseCode(), connection.getResponseMessage()));
            }
            return false;
        }
        return true;
    }

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

}