summaryrefslogtreecommitdiff
path: root/xmlhelp/source/cxxhelp/inc
diff options
context:
space:
mode:
authorOliver Bolte <obo@openoffice.org>2008-03-25 14:22:51 +0000
committerOliver Bolte <obo@openoffice.org>2008-03-25 14:22:51 +0000
commit6e3d07bdeba9ba5218c2cafc08e67f0df182cdf4 (patch)
tree3e5725ecb9e818c060d7d199ecd48b03d3853e23 /xmlhelp/source/cxxhelp/inc
parentac3abd8052e939e759ffede688cd3bee4347a909 (diff)
INTEGRATION: CWS ucbfixes06 (1.1.2); FILE ADDED
2008/01/21 15:30:21 kso 1.1.2.1: #i85425# - cleanup of CVS module.
Diffstat (limited to 'xmlhelp/source/cxxhelp/inc')
-rw-r--r--xmlhelp/source/cxxhelp/inc/util/IndexAccessor.hxx99
-rw-r--r--xmlhelp/source/cxxhelp/inc/util/RandomAccessStream.hxx73
2 files changed, 172 insertions, 0 deletions
diff --git a/xmlhelp/source/cxxhelp/inc/util/IndexAccessor.hxx b/xmlhelp/source/cxxhelp/inc/util/IndexAccessor.hxx
new file mode 100644
index 000000000000..07acbb2e4586
--- /dev/null
+++ b/xmlhelp/source/cxxhelp/inc/util/IndexAccessor.hxx
@@ -0,0 +1,99 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: IndexAccessor.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: obo $ $Date: 2008-03-25 15:19:23 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+#ifndef _XMLSEARCH_UTIL_INDEXACCESSOR_HXX_
+#define _XMLSEARCH_UTIL_INDEXACCESSOR_HXX_
+
+
+#ifndef _RTL_USTRING_HXX_
+#include <rtl/ustring.hxx>
+#endif
+#ifndef _XMLSEARCH_EXCEP_XMLSEARCHEXCEPTIONS_HXX_
+#include <excep/XmlSearchExceptions.hxx>
+#endif
+
+namespace xmlsearch {
+
+ namespace util {
+
+ class RandomAccessStream;
+
+ class IndexAccessor
+ {
+ public:
+
+ enum ACCESSKIND { READ,
+ WRITE,
+ READWRITE };
+
+
+ IndexAccessor( const rtl::OUString& dirName )
+ {
+ if( dirName.getLength() )
+ if( dirName.getStr()[dirName.getLength()-1] != sal_Unicode( '/' ) )
+ dirName_ = ( dirName + rtl::OUString::createFromAscii( "/" ) ) ;
+ else
+ dirName_ = dirName;
+ }
+
+
+ ~IndexAccessor()
+ {
+ }
+
+
+ IndexAccessor( const IndexAccessor& accessor )
+ {
+ dirName_ = accessor.dirName_;
+ }
+
+
+ RandomAccessStream* getStream( const rtl::OUString& fileName,
+ const rtl::OUString& how ) const;
+
+
+ sal_Int32 readByteArray( sal_Int8*& data, const rtl::OUString& fileName )
+ throw( xmlsearch::excep::IOException );
+
+ private:
+
+ rtl::OUString dirName_;
+
+ };
+
+ }
+}
+
+
+#endif
diff --git a/xmlhelp/source/cxxhelp/inc/util/RandomAccessStream.hxx b/xmlhelp/source/cxxhelp/inc/util/RandomAccessStream.hxx
new file mode 100644
index 000000000000..5a4037454935
--- /dev/null
+++ b/xmlhelp/source/cxxhelp/inc/util/RandomAccessStream.hxx
@@ -0,0 +1,73 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: RandomAccessStream.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: obo $ $Date: 2008-03-25 15:19:34 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+#ifndef _XMLEARCH_UTIL_RANDOMACCESSSTREAM_HXX_
+#define _XMLEARCH_UTIL_RANDOMACCESSSTREAM_HXX_
+
+#ifndef _OSL_FILE_HXX_
+#include <osl/file.hxx>
+#endif
+
+namespace xmlsearch {
+
+ namespace util {
+
+
+ class RandomAccessStream
+ {
+ public:
+
+ virtual ~RandomAccessStream() { };
+
+ // The calle is responsible for allocating the buffer
+ virtual void seek( sal_Int32 ) = 0;
+ virtual sal_Int32 readBytes( sal_Int8*,sal_Int32 ) = 0;
+ virtual void writeBytes( sal_Int8*, sal_Int32 ) = 0;
+ virtual sal_Int32 length() = 0;
+ virtual void close() = 0;
+
+
+ protected:
+
+ enum OPENFLAG { Read = OpenFlag_Read,
+ Write = OpenFlag_Write,
+ Create = OpenFlag_Create };
+
+ };
+
+
+ }
+}
+
+#endif