-
Andrea Gianarda authored
- Delete classes IdentityAddress and ConferenceAddress - Make Address a derived class of HybridObject - Use smart pointer for objects of Address type whenever they need to be handled by the applications
4f0ee26a
/*
* Copyright (c) 2010-2022 Belledonne Communications SARL.
*
* This file is part of Liblinphone
* (see https://gitlab.linphone.org/BC/public/liblinphone).
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* 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 Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include <stdio.h>
#include "bctoolbox/defs.h"
#include "xml2lpc.h"
void cb_function(BCTBX_UNUSED(void *ctx), xml2lpc_log_level level, const char *msg, va_list list) {
const char *header = "";
switch (level) {
case XML2LPC_DEBUG:
header = "DEBUG";
break;
case XML2LPC_MESSAGE:
header = "MESSAGE";
break;
case XML2LPC_WARNING:
header = "WARNING";
break;
case XML2LPC_ERROR:
header = "ERROR";
break;
}
fprintf(stdout, "%s - ", header);
vfprintf(stdout, msg, list);
fprintf(stdout, "\n");
}
void show_usage(BCTBX_UNUSED(int argc), char *argv[]) {
fprintf(stderr,
"usage %s convert <xml_file> <lpc_file>\n"
" %s validate <xml_file> <xsd_file>\n",
argv[0], argv[0]);
}
int main(int argc, char *argv[]) {
xml2lpc_context *ctx;
if (argc != 4) {
show_usage(argc, argv);
return -1;
}
ctx = xml2lpc_context_new(cb_function, NULL);
xml2lpc_set_xml_file(ctx, argv[2]);
if (strcmp("convert", argv[1]) == 0) {
LpConfig *lpc = linphone_config_new(argv[3]);
xml2lpc_convert(ctx, lpc);
linphone_config_sync(lpc);
linphone_config_destroy(lpc);
} else if (strcmp("validate", argv[1]) == 0) {
xml2lpc_set_xsd_file(ctx, argv[3]);
7172737475767778
xml2lpc_validate(ctx);
} else {
show_usage(argc, argv);
}
xml2lpc_context_destroy(ctx);
return 0;
}