[PATCH 9/9] HelpIndexer and HelpSearch: remove Java

Gert van Valkenhoef g.h.m.van.valkenhoef at rug.nl
Sun Feb 19 09:34:44 PST 2012


---
 l10ntools/source/help/HelpFileDocument.java        |   86 -----
 l10ntools/source/help/HelpIndexerTool.java         |  387 --------------------
 .../source/com/sun/star/help/HelpComponent.java    |   77 ----
 xmlhelp/source/com/sun/star/help/HelpIndexer.java  |  194 ----------
 xmlhelp/source/com/sun/star/help/HelpSearch.java   |  329 -----------------
 .../com/sun/star/help/LuceneHelpWrapper.component  |   37 --
 xmlhelp/source/com/sun/star/help/MANIFEST.MF       |    1 -
 xmlhelp/source/com/sun/star/help/helplinker.pmk    |   31 --
 xmlhelp/source/com/sun/star/help/makefile.mk       |   90 -----
 9 files changed, 0 insertions(+), 1232 deletions(-)
 delete mode 100644 l10ntools/source/help/HelpFileDocument.java
 delete mode 100644 l10ntools/source/help/HelpIndexerTool.java
 delete mode 100755 xmlhelp/source/com/sun/star/help/HelpComponent.java
 delete mode 100755 xmlhelp/source/com/sun/star/help/HelpIndexer.java
 delete mode 100755 xmlhelp/source/com/sun/star/help/HelpSearch.java
 delete mode 100755 xmlhelp/source/com/sun/star/help/LuceneHelpWrapper.component
 delete mode 100755 xmlhelp/source/com/sun/star/help/MANIFEST.MF
 delete mode 100755 xmlhelp/source/com/sun/star/help/helplinker.pmk
 delete mode 100755 xmlhelp/source/com/sun/star/help/makefile.mk

diff --git a/l10ntools/source/help/HelpFileDocument.java b/l10ntools/source/help/HelpFileDocument.java
deleted file mode 100644
index 15e62d6..0000000
--- a/l10ntools/source/help/HelpFileDocument.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * 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
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package com.sun.star.help;
-
-import java.io.File;
-import java.io.Reader;
-import java.io.FileInputStream;
-import java.io.InputStreamReader;
-//import java.io.FileReader;
-import java.io.StringReader;
-
-import org.apache.lucene.document.Document;
-import org.apache.lucene.document.Field;
-
-/** Lucene Document for help files */
-public class HelpFileDocument
-{
-    /** Creates reader for UTF-8 files
-    */
-    private static Reader getReaderForFile( File aFile )
-        throws java.io.FileNotFoundException, java.io.UnsupportedEncodingException {
-        Reader aReader;
-        if( aFile != null ) {
-            FileInputStream fis = new FileInputStream( aFile );
-            aReader = new InputStreamReader( fis, "UTF-8" );
-        }
-        else {
-            aReader = new StringReader( "" );
-        }
-        return aReader;
-    }
-
-    /** Makes a document for a File.
-    */
-    public static Document Document( String aModule, File aCaptionFile, File aContentFile )
-        throws java.io.FileNotFoundException, java.io.UnsupportedEncodingException {
-        Document doc = new Document();
-
-        // Add the path of the file as a field named "path".  Use a field that is
-        // indexed (i.e. searchable), but don't tokenize the field into words.
-        File aFile = aCaptionFile != null ? aCaptionFile : aContentFile;
-        if( aFile != null )
-        {
-            String aPath = "#HLP#" + aModule + "/" + aFile.getName();
-            doc.add(new Field("path", aPath, Field.Store.YES, Field.Index.UN_TOKENIZED));
-        }
-
-        // Add the caption of the file to a field named "caption".  Specify a Reader,
-        // so that the text of the file is tokenized and indexed, but not stored.
-        doc.add( new Field( "caption", getReaderForFile( aCaptionFile ) ) );
-
-        // Add the contents of the file to a field named "content".  Specify a Reader,
-        // so that the text of the file is tokenized and indexed, but not stored.
-        doc.add( new Field( "content", getReaderForFile( aContentFile ) ) );
-
-        // return the document
-        return doc;
-    }
-
-    private HelpFileDocument() {}
-}
diff --git a/l10ntools/source/help/HelpIndexerTool.java b/l10ntools/source/help/HelpIndexerTool.java
deleted file mode 100644
index d1d0873..0000000
--- a/l10ntools/source/help/HelpIndexerTool.java
+++ /dev/null
@@ -1,387 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * 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
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package com.sun.star.help;
-
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.List;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipOutputStream;
-import java.util.zip.CRC32;
-import org.apache.lucene.analysis.standard.StandardAnalyzer;
-import org.apache.lucene.analysis.cjk.CJKAnalyzer;
-import org.apache.lucene.analysis.Analyzer;
-import org.apache.lucene.index.IndexWriter;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.util.Date;
-
-
-/**
-   When this tool is used with long path names on Windows, that is paths which start
-   with \\?\, then the caller must make sure that the path is unique. This is achieved
-   by removing '.' and '..' from the path. Paths which are created by
-   osl_getSystemPathFromFileURL fulfill this requirement. This is necessary because
-   lucene is patched to not use File.getCanonicalPath. See long_path.patch in the lucene
-   module.
- */
-public class HelpIndexerTool
-{
-    public HelpIndexerTool()
-    {
-    }
-
-
-    /**
-     * @param args the command line arguments
-     */
-    public static void main( String[] args )
-    {
-        boolean bExtensionMode = false;
-        mainImpl( args, bExtensionMode );
-    }
-
-    public static void mainImpl( String[] args, boolean bExtensionMode )
-    {
-        String aDirToZipStr = "";
-        String aSrcDirStr = "";
-        String aLanguageStr = "";
-        String aModule = "";
-        String aTargetZipFileStr = "";
-        String aCfsName = "";
-        String aSegmentName = "";
-
-        // Scan arguments
-        //If this tool is invoked in the build process for extensions help,
-        //then -extension must be set.
-        boolean bExtension = false;
-        boolean bLang = false;
-        boolean bMod = false;
-        boolean bZipDir = false;
-        boolean bSrcDir = false;
-        boolean bOutput = false;
-        boolean bCfsName = false;
-        boolean bSegmentName = false;
-
-        int nArgCount = args.length;
-        for( int i = 0 ; i < nArgCount ; i++ )
-        {
-            if( "-extension".equals(args[i]) )
-            {
-                bExtension = true;
-            }
-            else if( "-lang".equals(args[i]) )
-            {
-                if( i + 1 < nArgCount )
-                {
-                    aLanguageStr = args[i + 1];
-                    bLang = true;
-                }
-                i++;
-            }
-            else if( "-mod".equals(args[i]) )
-            {
-                if( i + 1 < nArgCount )
-                {
-                    aModule = args[i + 1];
-                    bMod = true;
-                }
-                i++;
-            }
-            else if( "-zipdir".equals(args[i]) )
-            {
-                if( i + 1 < nArgCount )
-                {
-                    aDirToZipStr = args[i + 1];
-                    bZipDir = true;
-                }
-                i++;
-            }
-            else if( "-srcdir".equals(args[i]) )
-            {
-                if( i + 1 < nArgCount )
-                {
-                    aSrcDirStr = args[i + 1];
-                    bSrcDir = true;
-                }
-                i++;
-            }
-            else if( "-o".equals(args[i]) )
-            {
-                if( i + 1 < nArgCount )
-                {
-                    aTargetZipFileStr = args[i + 1];
-                    bOutput = true;
-                }
-                i++;
-            }
-            else if( "-checkcfsandsegname".equals(args[i]) )
-            {
-                if( i + 1 < nArgCount )
-                {
-                    aCfsName = args[i + 1] + ".cfs";
-                    bCfsName = true;
-                }
-                i++;
-                if( i + 1 < nArgCount )
-                {
-                    aSegmentName = "segments" + args[i + 1];
-                    bSegmentName = true;
-                }
-                i++;
-                if (!(bCfsName && bSegmentName))
-                {
-                    System.out.println("Usage: HelpIndexer -checkcfsandsegname _0 _3 (2 arguments needed)");
-                    System.exit( -1 );
-                }
-            }
-        }
-
-        if( !bLang || !bMod || !bZipDir || (!bOutput && !bExtensionMode && !bExtension) )
-        {
-            if( bExtensionMode )
-                return;
-
-            System.out.println("Usage: HelpIndexer -lang ISOLangCode -mod HelpModule -zipdir TempZipDir -o OutputZipFile");
-            System.out.println("Usage: HelpIndexer -extension -lang ISOLangCode -mod HelpModule -zipdir PathToLangDir");
-            System.exit( -1 );
-        }
-
-        String aIndexDirName = aModule + ".idxl";
-        File aIndexDir = new File( aDirToZipStr + File.separator + aIndexDirName );
-        if( !bSrcDir )
-            aSrcDirStr = aDirToZipStr;
-        File aCaptionFilesDir = new File( aSrcDirStr + File.separator + "caption" );
-        File aContentFilesDir = new File( aSrcDirStr + File.separator + "content" );
-
-        try
-        {
-            Analyzer analyzer = aLanguageStr.equals("ja") ? (Analyzer)new CJKAnalyzer() : (Analyzer)new StandardAnalyzer();
-            IndexWriter writer = new IndexWriter( aIndexDir, analyzer, true );
-            int nRet = indexDocs( writer, aModule, bExtensionMode, aCaptionFilesDir, aContentFilesDir );
-            if( nRet != -1 )
-                writer.optimize();
-            writer.close();
-
-            boolean bCfsFileOk = true;
-            boolean bSegmentFileOk = true;
-            if( bCfsName && bSegmentName && !bExtensionMode && nRet != -1 )
-            {
-                String aCompleteCfsFileName = aDirToZipStr + File.separator + aIndexDirName + File.separator + aCfsName;
-                String aCompleteSegmentFileName = aDirToZipStr + File.separator + aIndexDirName + File.separator + aSegmentName;
-                File aCfsFile = new File( aCompleteCfsFileName );
-                File aSegmentFile = new File( aCompleteSegmentFileName );
-                bCfsFileOk = aCfsFile.exists();
-                bSegmentFileOk = aSegmentFile.exists();
-                System.out.println( "Checking cfs file " + aCfsName+ ": " + (bCfsFileOk ? "Found" : "Not found") );
-                System.out.println( "Checking segment file " + aSegmentName+ ": " + (bSegmentFileOk ? "Found" : "Not found") );
-            }
-
-            if( bExtensionMode || bExtension)
-            {
-                if( !bSrcDir )
-                {
-                    deleteRecursively( aCaptionFilesDir );
-                    deleteRecursively( aContentFilesDir );
-                }
-            }
-            else
-            {
-                if( nRet == -1 )
-                    deleteRecursively( aIndexDir );
-
-                File aDirToZipFile = new File( aDirToZipStr );
-                createZipFile( aDirToZipFile, aTargetZipFileStr );
-                deleteRecursively( aDirToZipFile );
-            }
-
-            if( !bCfsFileOk )
-            {
-                System.out.println( "cfs file check failed, terminating..." );
-                System.exit( -1 );
-            }
-
-            if( !bSegmentFileOk )
-            {
-                System.out.println( "segment file check failed, terminating..." );
-                System.exit( -1 );
-            }
-        }
-        catch (IOException e)
-        {
-            if( bExtensionMode )
-                return;
-
-            System.out.println(" caught a " + e.getClass() +
-                "\n with message: " + e.getMessage());
-            System.exit( -1 );
-        }
-    }
-
-    private static int indexDocs(IndexWriter writer, String aModule, boolean bExtensionMode,
-        File aCaptionFilesDir, File aContentFilesDir) throws IOException
-    {
-        if( !aCaptionFilesDir.canRead() || !aCaptionFilesDir.isDirectory() )
-        {
-            if( !bExtensionMode )
-                System.out.println( "Not found: " + aCaptionFilesDir );
-            return -1;
-        }
-        if( !aContentFilesDir.canRead() || !aContentFilesDir.isDirectory() )
-        {
-            if( !bExtensionMode )
-                System.out.println( "Not found: " + aContentFilesDir );
-            return -1;
-        }
-
-        String[] aCaptionFiles = aCaptionFilesDir.list();
-        List aCaptionFilesList = Arrays.asList( aCaptionFiles );
-        HashSet aCaptionFilesHashSet = new HashSet( aCaptionFilesList );
-
-        String[] aContentFiles = aContentFilesDir.list();
-        List aContentFilesList = Arrays.asList( aContentFiles );
-        HashSet aContentFilesHashSet = new HashSet( aContentFilesList );
-
-        // Loop over caption files and find corresponding content file
-        int nCaptionFilesLen = aCaptionFiles.length;
-        for( int i = 0 ; i < nCaptionFilesLen ; i++ )
-        {
-            String aCaptionFileStr = aCaptionFiles[i];
-            File aCaptionFile = new File( aCaptionFilesDir, aCaptionFileStr );
-            File aContentFile = null;
-            if( aContentFilesHashSet.contains( aCaptionFileStr ) )
-                aContentFile = new File( aContentFilesDir, aCaptionFileStr );
-            writer.addDocument( HelpFileDocument.Document( aModule, aCaptionFile, aContentFile ) );
-        }
-
-        // Loop over content files to find remaining files not mapped to caption files
-        int nContentFilesLen = aContentFiles.length;
-        for( int i = 0 ; i < nContentFilesLen ; i++ )
-        {
-            String aContentFileStr = aContentFiles[i];
-            if( !aCaptionFilesHashSet.contains( aContentFileStr ) )
-            {
-                // Not already handled in caption files loop
-                File aCaptionFile = null;
-                File aContentFile = new File( aContentFilesDir, aContentFileStr );
-                writer.addDocument( HelpFileDocument.Document( aModule, aCaptionFile, aContentFile ) );
-            }
-        }
-        return 0;
-    }
-
-    public static void createZipFile( File aDirToZip, String aTargetZipFileStr )
-            throws FileNotFoundException, IOException
-    {
-        FileOutputStream fos = new FileOutputStream( aTargetZipFileStr );
-        ZipOutputStream zos = new ZipOutputStream( fos );
-
-        File[] aChildrenFiles = aDirToZip.listFiles();
-        int nFileCount = aChildrenFiles.length;
-        for( int i = 0 ; i < nFileCount ; i++ )
-            addToZipRecursively( zos, aChildrenFiles[i], null );
-
-        zos.close();
-    }
-
-    public static void addToZipRecursively( ZipOutputStream zos, File aFile, String aBasePath )
-            throws FileNotFoundException, IOException
-    {
-        if( aFile.isDirectory() )
-        {
-            String aDirName = aFile.getName();
-            if( aDirName.equalsIgnoreCase( "caption" ) || aDirName.equalsIgnoreCase( "content" ) )
-                return;
-
-            File[] aChildrenFiles = aFile.listFiles();
-            String aNewBasePath = "";
-            if( aBasePath != null )
-                aNewBasePath += aBasePath + File.separator;
-            aNewBasePath += aDirName;
-
-            int nFileCount = aChildrenFiles.length;
-            for( int i = 0 ; i < nFileCount ; i++ )
-                addToZipRecursively( zos, aChildrenFiles[i], aNewBasePath );
-
-            return;
-        }
-
-        // No directory
-        // read contents of file we are going to put in the zip
-        int fileLength = (int) aFile.length();
-        FileInputStream fis = new FileInputStream( aFile );
-        byte[] wholeFile = new byte[fileLength];
-        int bytesRead = fis.read( wholeFile, 0, fileLength );
-        fis.close();
-
-        String aFileName = aFile.getName();
-        String aEntryName = "";
-        if( aBasePath != null )
-            aEntryName += aBasePath + "/";
-        aEntryName += aFileName;
-        ZipEntry aZipEntry = new ZipEntry( aEntryName );
-        aZipEntry.setTime( aFile.lastModified() );
-        aZipEntry.setSize( fileLength );
-
-        int nMethod = ( aFileName.toLowerCase().endsWith( ".jar" ) )
-                ? ZipEntry.STORED : ZipEntry.DEFLATED;
-        aZipEntry.setMethod( nMethod );
-
-        CRC32 tempCRC = new CRC32();
-        tempCRC.update( wholeFile, 0, wholeFile.length );
-        aZipEntry.setCrc( tempCRC.getValue() );
-
-        // write the contents into the zip element
-        zos.putNextEntry( aZipEntry );
-        zos.write( wholeFile, 0, fileLength );
-        zos.closeEntry();
-    }
-
-    static public boolean deleteRecursively( File aFile )
-    {
-        if( aFile.isDirectory() )
-        {
-            File[] aChildrenFiles = aFile.listFiles();
-            int nFileCount = aChildrenFiles.length;
-            for( int i = 0 ; i < nFileCount ; i++ )
-            {
-                File aChildrenFile = aChildrenFiles[i];
-                boolean bSuccess = deleteRecursively( aChildrenFile );
-                if( !bSuccess )
-                    return false;
-            }
-        }
-
-        return aFile.delete();
-    }
-}
-
diff --git a/xmlhelp/source/com/sun/star/help/HelpComponent.java b/xmlhelp/source/com/sun/star/help/HelpComponent.java
deleted file mode 100755
index bb5b092..0000000
--- a/xmlhelp/source/com/sun/star/help/HelpComponent.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * 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
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package com.sun.star.help;
-
-import com.sun.star.lib.uno.helper.Factory;
-import com.sun.star.lang.XSingleComponentFactory;
-import com.sun.star.registry.XRegistryKey;
-
-/** This class capsulates the class, that implements the minimal component and a
- * factory for creating the service (<CODE>__getComponentFactory</CODE>).
- */
-public class HelpComponent
-{
-    /**
-     * Gives a factory for creating the service.
-     * This method is called by the <code>JavaLoader</code>
-     * <p>
-     * @return  returns a <code>XSingleComponentFactory</code> for creating
-     *          the component
-     * @param   sImplName the name of the implementation for which a
-     *          service is desired
-     * @see     com.sun.star.comp.loader.JavaLoader
-     */
-    public static XSingleComponentFactory __getComponentFactory(String sImplName)
-    {
-        XSingleComponentFactory xFactory = null;
-
-        if ( sImplName.equals( HelpSearch._HelpSearch.class.getName() ) )
-            xFactory = Factory.createComponentFactory(HelpSearch._HelpSearch.class,
-                                             HelpSearch._HelpSearch.getServiceNames());
-        else if ( sImplName.equals( HelpIndexer.class.getName() ) )
-            xFactory = Factory.createComponentFactory(HelpIndexer.class,
-                                             HelpIndexer.getServiceNames());
-        return xFactory;
-    }
-
-    /** This method is a member of the interface for initializing an object
-     * directly after its creation.
-     * @param object This array of arbitrary objects will be passed to the
-     * component after its creation.
-     * @throws Exception Every exception will not be handled, but will be
-     * passed to the caller.
-     */
-    public void initialize( Object[] object )
-        throws com.sun.star.uno.Exception
-    {
-        /* The component describes what arguments its expected and in which
-         * order!At this point you can read the objects and can intialize
-         * your component using these objects.
-         */
-    }
-}
diff --git a/xmlhelp/source/com/sun/star/help/HelpIndexer.java b/xmlhelp/source/com/sun/star/help/HelpIndexer.java
deleted file mode 100755
index abb8668..0000000
--- a/xmlhelp/source/com/sun/star/help/HelpIndexer.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * 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
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package com.sun.star.help;
-
-import com.sun.star.lib.uno.helper.WeakBase;
-import com.sun.star.lang.XServiceInfo;
-import com.sun.star.script.XInvocation;
-import com.sun.star.beans.XIntrospectionAccess;
-import com.sun.star.uno.AnyConverter;
-import com.sun.star.uno.XComponentContext;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.util.Date;
-import java.util.zip.ZipOutputStream;
-
-/**
-   When this tool is used with long path names on Windows, that is paths which start
-   with \\?\, then the caller must make sure that the path is unique. This is achieved
-   by removing '.' and '..' from the path. Paths which are created by
-   osl_getSystemPathFromFileURL fulfill this requirement. This is necessary because
-   lucene is patched to not use File.getCanonicalPath. See long_path.patch in the lucene
-   module.
- */
-public class HelpIndexer extends WeakBase
-    implements XServiceInfo, XInvocation
-{
-    static private final String __serviceName =
-        "com.sun.star.help.HelpIndexer";
-    static private final String aCreateIndexMethodName = "createIndex";
-
-    static private com.sun.star.help.HelpIndexerTool helpindexer = new com.sun.star.help.HelpIndexerTool();
-
-    public HelpIndexer()
-    {
-    }
-
-    public HelpIndexer(XComponentContext xCompContext)
-    {
-    }
-
-    public static void mainImpl( String[] args, boolean bExtensionMode )
-    {
-        helpindexer.mainImpl( args , bExtensionMode );
-    }
-
-    public static void createZipFile( File aDirToZip, String aTargetZipFileStr )
-            throws FileNotFoundException, IOException
-    {
-        helpindexer.createZipFile( aDirToZip , aTargetZipFileStr );
-    }
-
-    public static void addToZipRecursively( ZipOutputStream zos, File aFile, String aBasePath )
-            throws FileNotFoundException, IOException
-    {
-        helpindexer.addToZipRecursively( zos , aFile , aBasePath );
-    }
-
-    static public boolean deleteRecursively( File aFile )
-    {
-        return helpindexer.deleteRecursively( aFile );
-    }
-
-    //===================================================
-    // XInvocation
-    public XIntrospectionAccess getIntrospection()
-    {
-        return  null;
-    }
-
-    public Object invoke( String aFunctionName, java.lang.Object[] aParams,
-        short[][] aOutParamIndex, java.lang.Object[][] aOutParam )
-            throws  com.sun.star.lang.IllegalArgumentException,
-                    com.sun.star.script.CannotConvertException,
-                    com.sun.star.reflection.InvocationTargetException
-    {
-        if(
-              !aFunctionName.equals( aCreateIndexMethodName  ) )
-            throw new com.sun.star.lang.IllegalArgumentException();
-
-        aOutParamIndex[0] = new short[0];
-        aOutParam[0] = new Object[0];
-
-        int nParamCount = aParams.length;
-        String aStrs[] = new String[nParamCount];
-        for( int i = 0 ; i < nParamCount ; i++ )
-        {
-            try
-            {
-                aStrs[i] = AnyConverter.toString( aParams[i] );
-            }
-            catch( IllegalArgumentException e )
-            {
-                aStrs[i] = "";
-            }
-        }
-
-        boolean bExtensionMode = true;
-        mainImpl( aStrs, bExtensionMode );
-
-        return null;
-    }
-
-    public void setValue( String aPropertyName, java.lang.Object aValue )
-        throws  com.sun.star.beans.UnknownPropertyException,
-                com.sun.star.script.CannotConvertException,
-                com.sun.star.reflection.InvocationTargetException
-    {
-        throw new com.sun.star.beans.UnknownPropertyException();
-    }
-
-    public Object getValue( String aPropertyName )
-        throws com.sun.star.beans.UnknownPropertyException
-    {
-        throw new com.sun.star.beans.UnknownPropertyException();
-    }
-
-    public boolean hasMethod( String aMethodName )
-    {
-        boolean bRet = (aMethodName.equals( aCreateIndexMethodName ) );
-        return bRet;
-    }
-    public boolean hasProperty( String aName ) {
-        return false;
-    }
-
-
-
-    /** This method returns an array of all supported service names.
-     * @return Array of supported service names.
-     */
-    public String[] getSupportedServiceNames()
-    {
-        return getServiceNames();
-    }
-
-    /** This method is a simple helper function to used in the
-     * static component initialisation functions as well as in
-     * getSupportedServiceNames.
-     */
-    public static String[] getServiceNames()
-    {
-        String[] sSupportedServiceNames = { __serviceName };
-        return sSupportedServiceNames;
-    }
-
-
-    /** This method returns true, if the given service will be
-     * supported by the component.
-     * @param sServiceName Service name.
-     * @return True, if the given service name will be supported.
-     */
-    public boolean supportsService( String sServiceName )
-    {
-        return sServiceName.equals( __serviceName );
-    }
-
-
-    /** Return the class name of the component.
-     * @return Class name of the component.
-     */
-    public String getImplementationName()
-    {
-        return  HelpIndexer.class.getName();
-    }
-
-}
-
diff --git a/xmlhelp/source/com/sun/star/help/HelpSearch.java b/xmlhelp/source/com/sun/star/help/HelpSearch.java
deleted file mode 100755
index dc31514..0000000
--- a/xmlhelp/source/com/sun/star/help/HelpSearch.java
+++ /dev/null
@@ -1,329 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * 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
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package com.sun.star.help;
-
-import com.sun.star.lib.uno.helper.Factory;
-import com.sun.star.lang.XMultiComponentFactory;
-import com.sun.star.lang.XSingleComponentFactory;
-import com.sun.star.lib.uno.helper.WeakBase;
-import com.sun.star.uno.XComponentContext;
-import com.sun.star.registry.XRegistryKey;
-import com.sun.star.lang.XServiceInfo;
-import com.sun.star.uno.Type;
-import com.sun.star.uno.Any;
-import com.sun.star.uno.AnyConverter;
-
-import org.apache.lucene.analysis.Analyzer;
-import org.apache.lucene.analysis.standard.StandardAnalyzer;
-import org.apache.lucene.analysis.cjk.CJKAnalyzer;
-import org.apache.lucene.document.Document;
-import org.apache.lucene.index.IndexReader;
-import org.apache.lucene.index.Term;
-import org.apache.lucene.search.Hits;
-import org.apache.lucene.search.IndexSearcher;
-import org.apache.lucene.search.Query;
-import org.apache.lucene.search.Searcher;
-import org.apache.lucene.search.TermQuery;
-import org.apache.lucene.search.WildcardQuery;
-
-import com.sun.star.script.XInvocation;
-import com.sun.star.beans.XIntrospectionAccess;
-
-/** This class capsulates the class, that implements the minimal component and a
- * factory for creating the service (<CODE>__getComponentFactory</CODE>).
- */
-public class HelpSearch
-{
-    /** This class implements the component. At least the interfaces XServiceInfo,
-     * XTypeProvider, and XInitialization should be provided by the service.
-     */
-    public static class _HelpSearch extends WeakBase
-        implements XServiceInfo, XInvocation
-    {
-        /** The service name, that must be used to get an instance of this service.
-         */
-        static private final String __serviceName =
-            "com.sun.star.help.HelpSearch";
-        static private final String aSearchMethodName = "search";
-
-        /** The initial component contextr, that gives access to
-         * the service manager, supported singletons, ...
-         * It's often later used
-         */
-        private XComponentContext m_cmpCtx;
-
-        /** The service manager, that gives access to all registered services.
-         * It's often later used
-         */
-        private XMultiComponentFactory m_xMCF;
-
-        /** The constructor of the inner class has a XMultiServiceFactory parameter.
-         * @param xmultiservicefactoryInitialization A special service factory
-         * could be introduced while initializing.
-         */
-        public _HelpSearch(XComponentContext xCompContext)
-        {
-            try {
-                m_cmpCtx = xCompContext;
-                m_xMCF = m_cmpCtx.getServiceManager();
-            }
-            catch( Exception e ) {
-                e.printStackTrace();
-            }
-        }
-
-        /** This method returns an array of all supported service names.
-         * @return Array of supported service names.
-         */
-        public String[] getSupportedServiceNames()
-        {
-            return getServiceNames();
-        }
-
-        /** This method is a simple helper function to used in the
-         * static component initialisation functions as well as in
-         * getSupportedServiceNames.
-         */
-        public static String[] getServiceNames()
-        {
-            String[] sSupportedServiceNames = { __serviceName };
-            return sSupportedServiceNames;
-        }
-
-        /** This method returns true, if the given service will be
-         * supported by the component.
-         * @param sServiceName Service name.
-         * @return True, if the given service name will be supported.
-         */
-        public boolean supportsService( String sServiceName )
-        {
-            return sServiceName.equals( __serviceName );
-        }
-
-        /** Return the class name of the component.
-         * @return Class name of the component.
-         */
-        public String getImplementationName()
-        {
-            return  _HelpSearch.class.getName();
-        }
-
-        //===================================================
-        // XInvocation
-        public XIntrospectionAccess getIntrospection()
-        {
-            return  null;
-        }
-
-        public Object invoke( String aFunctionName, java.lang.Object[] aParams,
-            short[][] aOutParamIndex, java.lang.Object[][] aOutParam )
-                throws  com.sun.star.lang.IllegalArgumentException,
-                        com.sun.star.script.CannotConvertException,
-                        com.sun.star.reflection.InvocationTargetException
-        {
-            String[] aRet = null;
-            if( !aFunctionName.equals( aSearchMethodName ) )
-                throw new com.sun.star.lang.IllegalArgumentException();
-
-            Object[] aScoreOutArray = new Object[1];
-            aScoreOutArray[0] = null;
-            try
-            {
-                aRet =  doQuery( aParams, aScoreOutArray );
-            }
-            catch( Exception e )
-            {
-                aRet = null;
-            }
-
-            Object aScoreArray = aScoreOutArray[0];
-            if( aScoreArray == null )
-            {
-                aOutParamIndex[0] = new short[0];
-                aOutParam[0] = new Object[0];
-            }
-            else
-            {
-                short nInParamCount = (short)aParams.length;
-                aOutParamIndex[0] = new short[1];
-                aOutParamIndex[0][0] = nInParamCount;
-                aOutParam[0] = new Object[1];
-                aOutParam[0][0] = aScoreArray;
-            }
-
-            Any aRetAny = new Any( new Type( String[].class ), aRet );
-            return aRetAny;
-        }
-
-        public void setValue( String aPropertyName, java.lang.Object aValue )
-            throws  com.sun.star.beans.UnknownPropertyException,
-                    com.sun.star.script.CannotConvertException,
-                    com.sun.star.reflection.InvocationTargetException {
-            throw new com.sun.star.beans.UnknownPropertyException();
-        }
-
-        public Object getValue( String aPropertyName )
-            throws com.sun.star.beans.UnknownPropertyException {
-            throw new com.sun.star.beans.UnknownPropertyException();
-        }
-
-        public boolean hasMethod( String aMethodName ) {
-            boolean bRet = (aMethodName.equals( aSearchMethodName ) );
-            return bRet;
-        }
-        public boolean hasProperty( String aName ) {
-            return false;
-        }
-
-        // Command line interface for testing
-        private static String[] doQuery( Object[] args, Object[] aScoreOutArray ) throws Exception
-        {
-             String aLanguageStr = "";
-             String aIndexStr = "";
-            String aQueryStr = "";
-            boolean bCaptionOnly = false;
-
-            int nParamCount = args.length;
-            String aStrs[] = new String[nParamCount];
-            for( int i = 0 ; i < nParamCount ; i++ )
-            {
-                try
-                {
-                    aStrs[i] = AnyConverter.toString( args[i] );
-                }
-                catch( IllegalArgumentException e )
-                {
-                    aStrs[i] = "";
-                }
-            }
-
-            // TODO: Error handling
-            for( int i = 0 ; i < nParamCount ; i++ )
-            {
-                if ("-lang".equals(aStrs[i]) )
-                {
-                    aLanguageStr = aStrs[i + 1];
-                    i++;
-                }
-                else if( "-index".equals(aStrs[i]) )
-                {
-                    aIndexStr = aStrs[i+1];
-                    i++;
-                }
-                else if( "-query".equals(aStrs[i]) )
-                {
-                    aQueryStr = aStrs[i+1];
-                    i++;
-                }
-                else if( "-caption".equals(aStrs[i]) )
-                {
-                    bCaptionOnly = true;
-                }
-            }
-            String[] aDocs = queryImpl( aLanguageStr, aIndexStr, aQueryStr, bCaptionOnly, aScoreOutArray );
-
-            return aDocs;
-        }
-
-        private static String[] queryImpl( String aLanguageStr, String aIndexStr, String aQueryStr,
-            boolean bCaptionOnly, Object[] aScoreOutArray ) throws Exception
-        {
-            IndexReader reader = IndexReader.open( aIndexStr );
-            Searcher searcher = new IndexSearcher( reader );
-            Analyzer analyzer = aLanguageStr.equals("ja") ? (Analyzer)new CJKAnalyzer() : (Analyzer)new StandardAnalyzer();
-
-            String aField;
-            if( bCaptionOnly )
-                aField = "caption";
-            else
-                aField = "content";
-
-            Query aQuery;
-            if( aQueryStr.endsWith( "*" ) )
-                aQuery = new WildcardQuery( new Term( aField, aQueryStr ) );
-            else
-                aQuery = new TermQuery( new Term( aField, aQueryStr ) );
-
-            // Perform search
-            Hits aHits = searcher.search( aQuery );
-            int nHitCount = aHits.length();
-
-            String aDocs[] = new String[nHitCount];
-            float aScores[] = null;
-            aScores = new float[nHitCount];
-            for( int iHit = 0 ; iHit < nHitCount ; iHit++ )
-            {
-                Document aDoc = aHits.doc( iHit );
-                String aPath = aDoc.get( "path" );
-                aDocs[iHit] = ( aPath != null ) ? aPath : "";
-                aScores[iHit] = aHits.score( iHit );
-            }
-            aScoreOutArray[0] = aScores;
-
-            reader.close();
-
-            return aDocs;
-        }
-    }
-
-    /**
-     * Gives a factory for creating the service.
-     * This method is called by the <code>JavaLoader</code>
-     * <p>
-     * @return  returns a <code>XSingleComponentFactory</code> for creating
-     *          the component
-     * @param   sImplName the name of the implementation for which a
-     *          service is desired
-     * @see     com.sun.star.comp.loader.JavaLoader
-     */
-    public static XSingleComponentFactory __getComponentFactory(String sImplName)
-    {
-        XSingleComponentFactory xFactory = null;
-
-        if ( sImplName.equals( _HelpSearch.class.getName() ) )
-            xFactory = Factory.createComponentFactory(_HelpSearch.class,
-                                             _HelpSearch.getServiceNames());
-
-        return xFactory;
-    }
-
-        /** This method is a member of the interface for initializing an object
-         * directly after its creation.
-         * @param object This array of arbitrary objects will be passed to the
-         * component after its creation.
-         * @throws Exception Every exception will not be handled, but will be
-         * passed to the caller.
-         */
-        public void initialize( Object[] object )
-            throws com.sun.star.uno.Exception {
-            /* The component describes what arguments its expected and in which
-             * order!At this point you can read the objects and can intialize
-             * your component using these objects.
-             */
-        }
-}
diff --git a/xmlhelp/source/com/sun/star/help/LuceneHelpWrapper.component b/xmlhelp/source/com/sun/star/help/LuceneHelpWrapper.component
deleted file mode 100755
index 04b35bc..0000000
--- a/xmlhelp/source/com/sun/star/help/LuceneHelpWrapper.component
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* 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
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
-
-<component loader="com.sun.star.loader.Java2"
-    xmlns="http://openoffice.org/2010/uno-components">
-  <implementation name="com.sun.star.help.HelpIndexer">
-    <service name="com.sun.star.help.HelpIndexer"/>
-  </implementation>
-  <implementation name="com.sun.star.help.HelpSearch$_HelpSearch">
-    <service name="com.sun.star.help.HelpSearch"/>
-  </implementation>
-</component>
diff --git a/xmlhelp/source/com/sun/star/help/MANIFEST.MF b/xmlhelp/source/com/sun/star/help/MANIFEST.MF
deleted file mode 100755
index a4c5d50..0000000
--- a/xmlhelp/source/com/sun/star/help/MANIFEST.MF
+++ /dev/null
@@ -1 +0,0 @@
-RegistrationClassName: com.sun.star.help.HelpComponent
diff --git a/xmlhelp/source/com/sun/star/help/helplinker.pmk b/xmlhelp/source/com/sun/star/help/helplinker.pmk
deleted file mode 100755
index 6e99d32..0000000
--- a/xmlhelp/source/com/sun/star/help/helplinker.pmk
+++ /dev/null
@@ -1,31 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-# define HELPLINKER_DLLIMPLEMENTATION (see @ inc/xmlhelp/helplinkerdllapi.h)
-CDEFS += -DHELPLINKER_DLLIMPLEMENTATION
-
-VISIBILITY_HIDDEN=TRUE
diff --git a/xmlhelp/source/com/sun/star/help/makefile.mk b/xmlhelp/source/com/sun/star/help/makefile.mk
deleted file mode 100755
index a67f755..0000000
--- a/xmlhelp/source/com/sun/star/help/makefile.mk
+++ /dev/null
@@ -1,90 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-# 
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# 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
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ		= ..$/..$/..$/..$/..
-PRJNAME = xmlhelp
-TARGET  = HelpLinker
-PACKAGE = com$/sun$/star$/help
-
-.IF "$(SOLAR_JAVA)"!=""
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
- 
-JAVACLASSFILES = \
-    $(CLASSDIR)$/$(PACKAGE)$/HelpSearch.class			        \
-    $(CLASSDIR)$/$(PACKAGE)$/HelpComponent.class			        \
-    $(CLASSDIR)$/$(PACKAGE)$/HelpIndexer.class			        
-
-TRANSEX3FILES = \
-        $(SOLARBINDIR)$/help$/$(PACKAGE)$/HelpIndexerTool.class		\
-        $(SOLARBINDIR)$/help$/$(PACKAGE)$/HelpFileDocument.class				
-
-ADDFILES = $(subst,$(SOLARBINDIR)$/help,$(CLASSDIR) $(TRANSEX3FILES))
-
-JARFILES  = ridl.jar jurt.jar unoil.jar juh.jar 
-.IF "$(SYSTEM_LUCENE)" == "YES"
-EXTRAJARFILES = $(LUCENE_CORE_JAR) $(LUCENE_ANALYZERS_JAR)
-JARCLASSPATH = $(EXTRAJARFILES)
-.ELSE
-JARFILES += lucene-core-2.3.jar lucene-analyzers-2.3.jar
-JARCLASSPATH = lucene-core-2.3.jar lucene-analyzers-2.3.jar
-.ENDIF
-  
-JARTARGET	   	   = LuceneHelpWrapper.jar
-JARCOMPRESS        = TRUE 
-CUSTOMMANIFESTFILE = MANIFEST.MF
- 
-# --- Targets ------------------------------------------------------
-
-.INCLUDE :  target.mk
-
-.IF "$(JARTARGETN)"!=""
-$(JAVATARGET) : $(ADDFILES)
-$(JARTARGETN) : $(ADDFILES)
-.ENDIF
-
-$(ADDFILES) : $(SOLARBINDIR)$/help$/$(PACKAGE)$/$$(@:f)
-    $(MKDIRHIER) $(@:d)	
-    $(COPY) $< $@
-
-fix_system_lucene:
-    @echo "Fix Java Class-Path entry for Lucene libraries from system."
-    @$(SED) -r -e "s#^(Class-Path:).*#\1 file://$(LUCENE_CORE_JAR) file://$(LUCENE_ANALYZERS_JAR)#" \
-    -i ../../../../../$(INPATH)/class/HelpLinker/META-INF/MANIFEST.MF
-
-ALLTAR : $(MISC)/LuceneHelpWrapper.component
-
-$(MISC)/LuceneHelpWrapper.component .ERRREMOVE : \
-        $(SOLARENV)/bin/createcomponent.xslt LuceneHelpWrapper.component
-    $(XSLTPROC) --nonet --stringparam uri \
-        '$(COMPONENTPREFIX_BASIS_JAVA)$(JARTARGET)' -o $@ \
-        $(SOLARENV)/bin/createcomponent.xslt LuceneHelpWrapper.component
-.ELSE
-all:
-        @echo java disabled
-.ENDIF
-- 
1.7.0.4


--------------010002010906020500040707--


More information about the LibreOffice mailing list