X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=bacula%2Fsrc%2Flib%2Futil.c;h=8a3e56453cb491e77b648bdc581bbe39db81ccfe;hb=4132c9f33642f579d89700f36caced609d374d51;hp=1d93d1b542be1beae8ddafe56de75bff6cfd6fbf;hpb=7ca92ba1a97619faebe0861ae775c46899093c00;p=bacula%2Fbacula diff --git a/bacula/src/lib/util.c b/bacula/src/lib/util.c index 1d93d1b542..8a3e56453c 100644 --- a/bacula/src/lib/util.c +++ b/bacula/src/lib/util.c @@ -1,12 +1,12 @@ /* Bacula® - The Network Backup Solution - Copyright (C) 2000-2008 Free Software Foundation Europe e.V. + Copyright (C) 2000-2009 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 + modify it under the terms of version three of the GNU Affero General Public License as published by the Free Software Foundation and included in the file LICENSE. @@ -15,7 +15,7 @@ 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 + You should have received a copy of the GNU Affero 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. @@ -195,6 +195,9 @@ void jobstatus_to_ascii(int JobStatus, char *msg, int maxlen) case JS_Error: jobstat = _("Non-fatal error"); break; + case JS_Warnings: + jobstat = _("OK -- with warnings"); + break; case JS_Canceled: jobstat = _("Canceled"); break; @@ -266,6 +269,9 @@ void jobstatus_to_ascii_gui(int JobStatus, char *msg, int maxlen) case JS_Terminated: cnv = _("Completed successfully"); break; + case JS_Warnings: + cnv = _("Completed with warnings"); + break; case JS_ErrorTerminated: cnv = _("Terminated with errors"); break; @@ -298,7 +304,7 @@ void jobstatus_to_ascii_gui(int JobStatus, char *msg, int maxlen) if (cnv) { bstrncpy(msg, cnv, maxlen); } else { - jobstatus_to_ascii( JobStatus, msg, maxlen); + jobstatus_to_ascii(JobStatus, msg, maxlen); } } @@ -314,6 +320,9 @@ const char *job_status_to_str(int stat) case JS_Terminated: str = _("OK"); break; + case JS_Warnings: + str = _("OK -- with warnings"); + break; case JS_ErrorTerminated: case JS_Error: str = _("Error"); @@ -340,43 +349,65 @@ const char *job_status_to_str(int stat) */ const char *job_type_to_str(int type) { - const char *str; + const char *str = NULL; switch (type) { case JT_BACKUP: str = _("Backup"); break; + case JT_MIGRATED_JOB: + str = _("Migrated Job"); + break; case JT_VERIFY: str = _("Verify"); break; case JT_RESTORE: str = _("Restore"); break; + case JT_CONSOLE: + str = _("Console"); + break; + case JT_SYSTEM: + str = _("System or Console"); + break; case JT_ADMIN: str = _("Admin"); break; - case JT_MIGRATE: - str = _("Migrate"); + case JT_ARCHIVE: + str = _("Archive"); + break; + case JT_JOB_COPY: + str = _("Job Copy"); break; case JT_COPY: str = _("Copy"); break; - case JT_CONSOLE: - str = _("Console"); - break; - case JT_SYSTEM: - str = _("System or Console"); + case JT_MIGRATE: + str = _("Migrate"); break; case JT_SCAN: str = _("Scan"); break; - default: - str = _("Unknown Type"); - break; } + if (!str) { + str = _("Unknown Type"); + } return str; } +/* Convert ActionOnPurge to string (Truncate, Erase, Destroy) + */ +char *action_on_purge_to_string(int aop, POOL_MEM &ret) +{ + if (aop & ON_PURGE_TRUNCATE) { + pm_strcpy(ret, _("Truncate")); + } + if (!aop) { + pm_strcpy(ret, _("None")); + } + return ret.c_str(); +} + /* * Convert Job Level into a string */ @@ -687,6 +718,8 @@ void decode_session_key(char *decode, char *session, char *key, int maxlen) * %t = Job type (Backup, ...) * %r = Recipients * %v = Volume name + * %b = Job Bytes + * %f = Job Files * * omsg = edited output message * imsg = input string containing edit codes (%x) @@ -697,7 +730,7 @@ POOLMEM *edit_job_codes(JCR *jcr, char *omsg, char *imsg, const char *to, job_co { char *p, *q; const char *str; - char add[20]; + char add[50]; char name[MAX_NAME_LENGTH]; int i; @@ -743,7 +776,7 @@ POOLMEM *edit_job_codes(JCR *jcr, char *omsg, char *imsg, const char *to, job_co break; case 'l': if (jcr) { - str = job_level_to_str(jcr->get_JobLevel()); + str = job_level_to_str(jcr->getJobLevel()); } else { str = _("*none*"); } @@ -772,9 +805,15 @@ POOLMEM *edit_job_codes(JCR *jcr, char *omsg, char *imsg, const char *to, job_co str = _("*none*"); } break; + case 'f': /* Job Files */ + str = edit_uint64(jcr->JobFiles, add); + break; + case 'b': /* Job Bytes */ + str = edit_uint64(jcr->JobBytes, add); + break; case 't': if (jcr) { - str = job_type_to_str(jcr->get_JobType()); + str = job_type_to_str(jcr->getJobType()); } else { str = _("*none*"); }