#include "pk-backend.h"
#include <pk-backend-job.h>

/* Define symbols used by libpk_backend_apt,
 * otherwise we can't link it.
 */

const gchar *
pk_backend_job_get_locale (PkBackendJob *job)
{
    return NULL;
}

gpointer
pk_backend_job_get_user_data (PkBackendJob *job)
{
    return NULL;
}

void
pk_backend_job_set_user_data (PkBackendJob *job, gpointer user_data)
{
}

void
pk_backend_job_repo_detail (PkBackendJob *job,
                            const gchar *repo_id,
                            const gchar *description,
                            gboolean enabled)
{
}

void
pk_backend_job_update_details (PkBackendJob *job,
                               GPtrArray *update_details)
{
}

void
pk_backend_job_packages (PkBackendJob   *job,
                         GPtrArray  *packages)
{
}

void
pk_backend_job_set_download_size_remaining (PkBackendJob *job,
                                            guint64 download_size_remaining)
{
}

void
pk_backend_job_error_code (PkBackendJob *job,
                           PkErrorEnum error_code,
                           const gchar *format, ...)
{
}

void
pk_backend_job_files (PkBackendJob *job,
                      const gchar *package_id,
                      gchar **files)
{
}

void
pk_backend_job_require_restart (PkBackendJob *job,
                             PkRestartEnum restart,
                             const gchar *package_id)
{
}

void
pk_backend_job_set_percentage (PkBackendJob *job,
                               guint percentage)
{
}

void
pk_backend_job_set_speed (PkBackendJob *job,
                          guint speed)
{
}

PkBitfield
pk_backend_job_get_transaction_flags (PkBackendJob *job)
{
    return 0;
}

void
pk_backend_job_package (PkBackendJob *job,
                        PkInfoEnum info,
                        const gchar *package_id,
                        const gchar *summary)
{
}

void
pk_backend_job_media_change_required (PkBackendJob *job,
                                      PkMediaTypeEnum media_type,
                                      const gchar *media_id,
                                      const gchar *media_text)
{
}

void
pk_backend_job_set_allow_cancel (PkBackendJob *job,
                                 gboolean allow_cancel)
{
}

gboolean
pk_backend_job_get_interactive (PkBackendJob *job)
{
        return FALSE;
}

void
pk_backend_job_set_status (PkBackendJob *job,
                           PkStatusEnum status)
{
}

PkRoleEnum
pk_backend_job_get_role (PkBackendJob *job)
{
    return PK_ROLE_ENUM_UNKNOWN;
}

const gchar *
pk_backend_job_get_proxy_ftp (PkBackendJob *job)
{
    return NULL;
}

void
pk_backend_job_set_item_progress (PkBackendJob *job,
                                  const gchar *package_id,
                                  PkStatusEnum status,
                                  guint percentage)
{

}

gpointer
pk_backend_job_get_backend (PkBackendJob *job)
{
    return NULL;
}

const gchar *
pk_backend_job_get_frontend_socket (PkBackendJob *job)
{
    return NULL;
}

gboolean
pk_backend_job_thread_create (PkBackendJob *job,
                              PkBackendJobThreadFunc func,
                              gpointer user_data,
                              GDestroyNotify destroy_func)
{
    return TRUE;
}

const gchar *
pk_backend_job_get_proxy_http (PkBackendJob *job)
{
    return NULL;
}

void
pk_backend_job_details_full (PkBackendJob *job,
                             const gchar *package_id,
                             const gchar *summary,
                             const gchar *license,
                             PkGroupEnum group,
                             const gchar *description,
                             const gchar *url,
                             gulong size,
                             guint64 download_size)
{
}

guint
pk_backend_job_get_uid (PkBackendJob *job)
{
    return 0;
}

gchar *
pk_backend_convert_uri (const gchar *proxy)
{
    return NULL;
}

GType
pk_backend_get_type ()
{
    return G_TYPE_RESERVED_USER_FIRST;
}

gboolean
pk_backend_is_online (PkBackend *backend)
{
    return TRUE;
}
