From 28dff4c5cd1c118b27eedcbf2fea66ccb14bca96 Mon Sep 17 00:00:00 2001 From: Kern Sibbald Date: Mon, 12 Feb 2007 11:37:33 +0000 Subject: [PATCH] Update git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@4169 91ce42f0-d328-0410-95d8-f526ca767f89 --- bacula/src/qt-console/console/console.cpp | 21 +++++++++ bacula/src/qt-console/console/console.h | 52 ++++++++++++++++++++++- 2 files changed, 72 insertions(+), 1 deletion(-) diff --git a/bacula/src/qt-console/console/console.cpp b/bacula/src/qt-console/console/console.cpp index b071f29a93..416cca7b11 100644 --- a/bacula/src/qt-console/console/console.cpp +++ b/bacula/src/qt-console/console/console.cpp @@ -178,6 +178,27 @@ QStringList Console::get_list(char *cmd) return list; } +/* + * Send a job name to the director, and read all the resulting + * defaults. + */ +bool Console::get_job_defaults(char *job_name, struct job_defaults &job_defs) +{ + char cmd[1000]; + int stat; + + setEnabled(false); + bsnprintf(cmd, sizeof(cmd), ".defaults job=\"%s\"", job_name); + write(cmd); + while ((stat = read()) > 0) { + strip_trailing_junk(msg()); + set_text(msg()); + } + setEnabled(true); + return true; +} + + /* * Save user settings */ diff --git a/bacula/src/qt-console/console/console.h b/bacula/src/qt-console/console/console.h index e31792c532..eaea4fba41 100644 --- a/bacula/src/qt-console/console/console.h +++ b/bacula/src/qt-console/console/console.h @@ -1,11 +1,60 @@ - #ifndef _CONSOLE_H_ #define _CONSOLE_H_ +/* + Bacula® - The Network Backup Solution + + Copyright (C) 2000-2007 Free Software Foundation Europe e.V. + + The main author of Bacula is Kern Sibbald, with contributions from + many others, a complete list can be found in the file AUTHORS. + This program is Free Software; you can redistribute it and/or + modify it under the terms of version two of the GNU General Public + License as published by the Free Software Foundation plus additions + that are listed in the file LICENSE. + + This program is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301, USA. + + Bacula® is a registered trademark of John Walker. + The licensor of Bacula is the Free Software Foundation Europe + (FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich, + Switzerland, email:ftf@fsfeurope.org. +*/ +/* + * Version $Id$ + * + * Kern Sibbald, January 2007 + */ + #include #include "ui_console.h" #include "restore.h" +#ifndef MAX_NAME_LENGTH +#define MAX_NAME_LENGTH 128 +#endif + +struct job_defaults { + char job_name[MAX_NAME_LENGTH]; + char pool_name[MAX_NAME_LENGTH]; + char messages_name[MAX_NAME_LENGTH]; + char client_name[MAX_NAME_LENGTH]; + char store_name[MAX_NAME_LENGTH]; + char level[MAX_NAME_LENGTH]; + char type[MAX_NAME_LENGTH]; + char fileset_name[MAX_NAME_LENGTH]; + char catalog_name[MAX_NAME_LENGTH]; + bool enabled; +}; + class DIRRES; class BSOCK; class JCR; @@ -30,6 +79,7 @@ public: char *msg(); void setEnabled(bool enable) { m_notifier->setEnabled(enable); }; QStringList get_list(char *cmd); + bool get_job_defaults(char *job_name, struct job_defaults &); QStringList job_list; QStringList client_list; -- 2.39.5