'************************************************************************* ' ' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ' ' Copyright 2008 by Sun Microsystems, Inc. ' ' OpenOffice.org - a multi-platform office productivity suite ' ' $RCSfile: sm_XMLMetaImporter.xba,v $ ' ' $Revision: 1.3 $ ' ' This file is part of OpenOffice.org. ' ' OpenOffice.org is free software: you can redistribute it and/or modify ' it under the terms of the GNU Lesser General Public License version 3 ' only, as published by the Free Software Foundation. ' ' OpenOffice.org 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 Lesser General Public License version 3 for more details ' (a copy is included in the LICENSE file that accompanied this code). ' ' You should have received a copy of the GNU Lesser General Public License ' version 3 along with OpenOffice.org. If not, see ' ' for a copy of the LGPLv3 License. ' '************************************************************************* '************************************************************************* ' Be sure that all variables are dimensioned: option explicit ' REQUIRED VARIABLES for interface/service tests: ' Required for com.sun.star.xml.sax.XDocumentHandler Global vXMLData As Variant ' Required for procedure CheckImport Global sTitle, sName, sValue As String ' Required for com.sun.star.document.XImporter: Global oSrcDocument As Object Sub CreateObj() '************************************************************************* ' COMPONENT: ' sm.XMLMetaImporter '************************************************************************* On Error Goto ErrHndl oDoc = utils.createDocument("smath", cObjectName) oObj = createUnoService("com.sun.star.comp.Math.XMLMetaImporter") oSrcDocument = oDoc oObj.setTargetDocument(oDoc) sTitle = "XMLMetaImporter Title" sName = "XMLMetaImporter" sValue = "XMLMetaImporter_Value" vXMLData = Array( _ Array("start", "office:document-meta", _ "xmlns:office", "CDATA", "http://openoffice.org/2000/office", _ "xmlns:meta", "CDATA", "http://openoffice.org/2000/meta", _ "xmlns:xlink", "CDATA", "http://www.w3.org/1999/xlink", _ "xmlns:dc", "CDATA", "http://purl.org/dc/elements/1.1/"), _ Array("start", "office:meta"), _ Array("start", "dc:title"), _ Array("chars", sTitle), _ Array("end", "dc:title"), _ Array("start", "meta:user-defined", _ "meta:name", "CDATA", sName), _ Array("chars", sValue), _ Array("end", "meta:user-defined"), _ Array("end", "office:meta"), _ Array("end", "office:document-meta")) Exit Sub ErrHndl: Test.Exception() End Sub Function CheckImport() As Boolean out.log("checking of import...") Dim res As Boolean Dim i As Integer Dim docInfo As Object Dim fieldValue, fieldName, title as String docInfo = oDoc.getDocumentInfo() res = false For i = 0 to docInfo.getUserFieldCount() - 1 fieldName = docInfo.getUserFieldName(i) fieldValue = docInfo.getUserFieldValue(i) out.log("Field name: " + fieldName + " Value: " + fieldValue) If (fieldName = sName) and (fieldValue = sValue) then res = true EndIf Next i title = docInfo.getPropertyValue("Title") out.log("Title: " + title) res = res and (title = sTitle) out.log("checking result: " + res) CheckImport() = res End Function