lok: Change version string to JSON format

Change-Id: Ie1264fed9964b09006980df2e151e170b48b4082
This commit is contained in:
Pranav Kant
2016-06-21 20:23:13 +05:30
parent 3fecccad4a
commit d7b45c97b3
3 changed files with 22 additions and 8 deletions

View File

@@ -2007,7 +2007,15 @@ static void lo_setDocumentPassword(LibreOfficeKit* pThis,
static char* lo_getVersionInfo(LibreOfficeKit* /*pThis*/)
{
const OString sVersionStr = OUStringToOString(ReplaceStringHookProc("%PRODUCTNAME %PRODUCTVERSION %PRODUCTEXTENSION %BUILDID"), RTL_TEXTENCODING_UTF8);
const OUString sVersionStrTemplate(
"{ "
"\"ProductName\": \"%PRODUCTNAME\", "
"\"ProductVersion\": \"%PRODUCTVERSION\", "
"\"ProductExtension\": \"%PRODUCTEXTENSION\", "
"\"BuildId\": \"%BUILDID\" "
"}"
);
const OString sVersionStr = OUStringToOString(ReplaceStringHookProc(sVersionStrTemplate), RTL_TEXTENCODING_UTF8);
char* pVersion = static_cast<char*>(malloc(sVersionStr.getLength() + 1));
strcpy(pVersion, sVersionStr.getStr());

View File

@@ -550,10 +550,13 @@ public:
/**
* Get version information of the LOKit process
*
* @returns string containing version information in format:
* PRODUCT_NAME PRODUCT_VERSION PRODUCT_EXTENSION BUILD_ID
* @returns JSON string containing version information in format:
* {ProductName: <>, ProductVersion: <>, ProductExtension: <>, BuildId: <>}
*
* Eg: LibreOffice 5.3 .0.0 alpha0 <commit hash>
* Eg: {"ProductName": "LibreOffice",
* "ProductVersion": "5.3",
* "ProductExtension": ".0.0.alpha0",
* "BuildId": "<full 40 char git hash>"}
*/
inline char* getVersionInfo()
{

View File

@@ -319,12 +319,15 @@ void lok_doc_view_set_document_password (LOKDocView*
* lok_doc_view_get_version_info:
* @pDocView: The #LOKDocView instance
*
* Get version information of underlying LOKit process
* Get version information of the LOKit process
*
* Returns: string containing version information in format
* PRODUCT_NAME PRODUCT_VERSION PRODUCT_EXTENSION BUILD_ID
* Returns: JSON string containing version information in format:
* {ProductName: <>, ProductVersion: <>, ProductExtension: <>, BuildId: <>}
*
* Eg: LibreOffice 5.3 .0.0.alpha0 <commit hash>
* Eg: {"ProductName": "LibreOffice",
* "ProductVersion": "5.3",
* "ProductExtension": ".0.0.alpha0",
* "BuildId": "<full 40 char git hash>"}
*/
gchar* lok_doc_view_get_version_info (LOKDocView* pDocView);