Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
61db713e
Kaydet (Commit)
61db713e
authored
Eyl 29, 2011
tarafından
Cédric Bosdonnat
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
CMIS: added libcmis module and created empty cmis UCP shell
üst
cd5f71c9
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
813 additions
and
1 deletion
+813
-1
ExternalLib_libcmis.mk
libcmis/ExternalLib_libcmis.mk
+33
-0
Makefile
libcmis/Makefile
+38
-0
Module_libcmis.mk
libcmis/Module_libcmis.mk
+35
-0
build.lst
libcmis/prj/build.lst
+2
-0
d.lst
libcmis/prj/d.lst
+0
-0
makefile.mk
libcmis/prj/makefile.mk
+40
-0
UnoApi_offapi.mk
offapi/UnoApi_offapi.mk
+1
-0
CmisContentProvider.idl
offapi/com/sun/star/ucb/CmisContentProvider.idl
+57
-0
libs.mk
solenv/inc/libs.mk
+1
-0
build.lst
ucb/prj/build.lst
+2
-1
d.lst
ucb/prj/d.lst
+1
-0
cmis_content.cxx
ucb/source/ucp/cmis/cmis_content.cxx
+0
-0
cmis_content.hxx
ucb/source/ucp/cmis/cmis_content.hxx
+179
-0
cmis_provider.cxx
ucb/source/ucp/cmis/cmis_provider.cxx
+127
-0
cmis_provider.hxx
ucb/source/ucp/cmis/cmis_provider.hxx
+67
-0
makefile.mk
ucb/source/ucp/cmis/makefile.mk
+70
-0
ucpcmis.component
ucb/source/ucp/cmis/ucpcmis.component
+34
-0
ucpcmis.xml
ucb/source/ucp/cmis/ucpcmis.xml
+126
-0
No files found.
libcmis/ExternalLib_libcmis.mk
0 → 100644
Dosyayı görüntüle @
61db713e
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# Version: MPL 1.1 / GPLv3+ / LGPLv3+
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# Major Contributor(s):
# Copyright (C) 2011 SUSE <cbosdonnat@suse.com>
#
# All Rights Reserved.
#
# For minor contributions see the git repository.
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
# instead of those above.
$(eval $(call gb_ExternalLib_ExternalLib,libcmis,autotools))
$(eval $(call gb_ExternalLib_set_src_package,libcmis,b9ac948fed0a9a5dd083160119c0b0b3-libcmis-0.1.0.tar.gz))
# vim: set noet sw=4 ts=4:
libcmis/Makefile
0 → 100644
Dosyayı görüntüle @
61db713e
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# Version: MPL 1.1 / GPLv3+ / LGPLv3+
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# Major Contributor(s):
# Copyright (C) 2011 SUSE <cbosdonnat@suse.com>
#
# All Rights Reserved.
#
# For minor contributions see the git repository.
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
# instead of those above.
ifeq
($(strip
$(SRC_ROOT)),)
$(error
No
environment
set!)
endif
gb_PARTIALBUILD
:=
T
GBUILDDIR
:=
$(SRC_ROOT)
/solenv/gbuild
include
$(GBUILDDIR)/gbuild.mk
$(eval
$(call
gb_Module_make_global_targets,$(shell
ls
$(dir
$(realpath
$(firstword
$(MAKEFILE_LIST))))/Module*.mk)))
# vim: set noet sw=4 ts=4:
libcmis/Module_libcmis.mk
0 → 100644
Dosyayı görüntüle @
61db713e
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# Version: MPL 1.1 / GPLv3+ / LGPLv3+
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# Major Contributor(s):
# Copyright (C) 2011 SUSE <cbosdonnat@suse.com>
#
# All Rights Reserved.
#
# For minor contributions see the git repository.
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
# instead of those above.
$(eval $(call gb_Module_Module,libcmis))
$(eval $(call gb_Module_add_targets,libcmis,\
ExternalLib_libcmis \
))
# vim: set noet sw=4 ts=4:
libcmis/prj/build.lst
0 → 100644
Dosyayı görüntüle @
61db713e
lc libcmis : soltools NULL
lc libcmis/prj nmake - all lc_prj NULL
libcmis/prj/d.lst
0 → 100644
Dosyayı görüntüle @
61db713e
libcmis/prj/makefile.mk
0 → 100644
Dosyayı görüntüle @
61db713e
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# Version: MPL 1.1 / GPLv3+ / LGPLv3+
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# Major Contributor(s):
# Copyright (C) 2011 Norbert Thiebaud <nthiebaud@gmail.com>
#
# All Rights Reserved.
#
# For minor contributions see the git repository.
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
# instead of those above.
PRJ
=
..
TARGET
=
prj
.INCLUDE
:
settings.mk
.IF
"$(VERBOSE)"
!=
""
VERBOSEFLAG
:=
.ELSE
VERBOSEFLAG
:=
-s
.ENDIF
all
:
cd
$(PRJ)
&&
$(GNUMAKE)
$(VERBOSEFLAG)
-r
-j
$(GMAKE_MODULE_PARALLELISM)
$(gb_MAKETARGET)
&&
$(GNUMAKE)
$(VERBOSEFLAG)
-r
deliverlog
offapi/UnoApi_offapi.mk
Dosyayı görüntüle @
61db713e
...
@@ -1335,6 +1335,7 @@ $(eval $(call gb_UnoApiTarget_add_idlfiles_noheader,offapi,offapi/com/sun/star/u
...
@@ -1335,6 +1335,7 @@ $(eval $(call gb_UnoApiTarget_add_idlfiles_noheader,offapi,offapi/com/sun/star/u
CachedDynamicResultSetFactory \
CachedDynamicResultSetFactory \
CachedDynamicResultSetStub \
CachedDynamicResultSetStub \
CachedDynamicResultSetStubFactory \
CachedDynamicResultSetStubFactory \
CmisContentProvider \
Content \
Content \
ContentProvider \
ContentProvider \
ContentProviderProxy \
ContentProviderProxy \
...
...
offapi/com/sun/star/ucb/CmisContentProvider.idl
0 → 100644
Dosyayı görüntüle @
61db713e
/*
*
Version
:
MPL
1.1
/
GPLv3
+
/
LGPLv3
+
*
*
The
contents
of
this
file
are
subject
to
the
Mozilla
Public
License
Version
*
1.1
(
the
"License"
)
; you may not use this file except in compliance with
*
the
License
or
as
specified
alternatively
below
.
You
may
obtain
a
copy
of
*
the
License
at
http
:
//
www
.
mozilla.org/MPL/
*
*
Software
distributed
under
the
License
is
distributed
on
an
"AS IS"
basis
,
*
WITHOUT
WARRANTY
OF
ANY
KIND
,
either
express
or
implied
.
See
the
License
*
for
the
specific
language
governing
rights
and
limitations
under
the
*
License
.
*
*
Major
Contributor
(
s
):
*
[
Copyright
(
C
)
2011
SUSE
<
cbosdonnat
@
suse
.
com>
(
initial
developer
)
]
*
*
All
Rights
Reserved
.
*
*
For
minor
contributions
see
the
git
repository
.
*
*
Alternatively
,
the
contents
of
this
file
may
be
used
under
the
terms
of
*
either
the
GNU
General
Public
License
Version
3
or
later
(
the
"GPLv3+"
),
or
*
the
GNU
Lesser
General
Public
License
Version
3
or
later
(
the
"LGPLv3+"
),
*
in
which
case
the
provisions
of
the
GPLv3
+
or
the
LGPLv3
+
are
applicable
*
instead
of
those
above
.
*/
#
ifndef
__com_sun_star_ucb_CmisContentProvider_idl__
#
define
__com_sun_star_ucb_CmisContentProvider_idl__
#
include
<
com
/
sun
/
star
/
ucb
/
XContentProvider
.
idl>
//=============================================================================
module
com
{
module
sun
{
module
star
{
module
ucb
{
//=============================================================================
/**
The
Cmis
Content
Provider
implements
a
<
type
>
ContentProvider
</
type
>
for
the
<
Type
>
UniversalContentBroker
</
type
>
(
UCB
)
.
<
p
>
The
served
contents
enable
access
to
directories
and
files
on
a
cmis
-
enabled
server
.
</p>
@
see
com
::
sun
::
star
::
ucb
::
Content
@
since
LibreOffice
3.5
*/
service
CmisContentProvider
:
com
::
sun
::
star
::
ucb
::
XContentProvider
{
}
;
//=============================================================================
}
; }; }; };
#
endif
solenv/inc/libs.mk
Dosyayı görüntüle @
61db713e
...
@@ -248,6 +248,7 @@ REDLANDLIB=$(REDLAND_LIBS)
...
@@ -248,6 +248,7 @@ REDLANDLIB=$(REDLAND_LIBS)
.ELSE
.ELSE
REDLANDLIB=-lrdf
REDLANDLIB=-lrdf
.ENDIF
.ENDIF
CMISLIB=-lcmis-0.2
# #110743#
# #110743#
...
...
ucb/prj/build.lst
Dosyayı görüntüle @
61db713e
uc ucb : cppuhelper CURL:curl OPENSSL:openssl NEON:neon LIBXML2:libxml2 LIBXSLT:libxslt offapi sal salhelper ucbhelper udkapi comphelper tools NULL
uc ucb : cppuhelper CURL:curl OPENSSL:openssl NEON:neon LIBXML2:libxml2 LIBXSLT:libxslt
libcmis
offapi sal salhelper ucbhelper udkapi comphelper tools NULL
uc ucb usr1 - all uc_mkout NULL
uc ucb usr1 - all uc_mkout NULL
uc ucb\inc nmake - all uc_inc NULL
uc ucb\inc nmake - all uc_inc NULL
uc ucb\source\regexp nmake - all uc_regexp uc_inc NULL
uc ucb\source\regexp nmake - all uc_regexp uc_inc NULL
...
@@ -16,6 +16,7 @@ uc ucb\source\ucp\tdoc nmake - all uc_tdoc uc_inc NULL
...
@@ -16,6 +16,7 @@ uc ucb\source\ucp\tdoc nmake - all uc_tdoc uc_inc NULL
uc ucb\source\ucp\expand nmake - all uc_expand uc_inc NULL
uc ucb\source\ucp\expand nmake - all uc_expand uc_inc NULL
uc ucb\source\ucp\ext nmake - all uc_ext uc_inc NULL
uc ucb\source\ucp\ext nmake - all uc_ext uc_inc NULL
uc ucb\source\ucp\odma nmake - w uc_odma uc_inc NULL
uc ucb\source\ucp\odma nmake - w uc_odma uc_inc NULL
uc ucb\source\ucp\cmis nmake - all uc_cmis uc_inc NULL
#uc ucb\qa\complex\ucb nmake - all uc_complex_ucb uc_inc NULL
#uc ucb\qa\complex\ucb nmake - all uc_complex_ucb uc_inc NULL
# fails, please fix
# fails, please fix
# uc ucb\qa\complex\tdoc nmake - all uc_complex_tdoc uc_complex_tdoc_interfaces uc_inc NULL
# uc ucb\qa\complex\tdoc nmake - all uc_complex_tdoc uc_complex_tdoc_interfaces uc_inc NULL
ucb/prj/d.lst
Dosyayı görüntüle @
61db713e
...
@@ -40,6 +40,7 @@
...
@@ -40,6 +40,7 @@
..\%__SRC%\misc\ucpgvfs.component %_DEST%\xml\ucpgvfs.component
..\%__SRC%\misc\ucpgvfs.component %_DEST%\xml\ucpgvfs.component
..\%__SRC%\misc\ucpgio.component %_DEST%\xml\ucpgio.component
..\%__SRC%\misc\ucpgio.component %_DEST%\xml\ucpgio.component
..\%__SRC%\misc\ucpcmis.component %_DEST%\xml\ucpcmis.component
..\%__SRC%\misc\cached1.component %_DEST%\xml\cached1.component
..\%__SRC%\misc\cached1.component %_DEST%\xml\cached1.component
..\%__SRC%\misc\srtrs1.component %_DEST%\xml\srtrs1.component
..\%__SRC%\misc\srtrs1.component %_DEST%\xml\srtrs1.component
..\%__SRC%\misc\ucb1.component %_DEST%\xml\ucb1.component
..\%__SRC%\misc\ucb1.component %_DEST%\xml\ucb1.component
...
...
ucb/source/ucp/cmis/cmis_content.cxx
0 → 100644
Dosyayı görüntüle @
61db713e
This diff is collapsed.
Click to expand it.
ucb/source/ucp/cmis/cmis_content.hxx
0 → 100644
Dosyayı görüntüle @
61db713e
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* Version: MPL 1.1 / GPLv3+ / LGPLv3+
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License or as specified alternatively below. You may obtain a copy of
* the License at http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* Major Contributor(s):
* [ Copyright (C) 2011 SUSE <cbosdonnat@suse.com> (initial developer) ]
*
* All Rights Reserved.
*
* For minor contributions see the git repository.
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 3 or later (the "GPLv3+"), or
* the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
* in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
* instead of those above.
*/
#ifndef CMIS_CONTENT_HXX
#define CMIS_CONTENT_HXX
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/io/XOutputStream.hpp>
#include <com/sun/star/ucb/ContentCreationException.hpp>
#include <com/sun/star/ucb/OpenCommandArgument2.hpp>
#include <com/sun/star/ucb/TransferInfo.hpp>
#include <com/sun/star/ucb/XContentCreator.hpp>
#include <ucbhelper/contenthelper.hxx>
#include <libcmis/session-factory.hxx>
#include <list>
namespace
com
{
namespace
sun
{
namespace
star
{
namespace
beans
{
struct
Property
;
struct
PropertyValue
;
}
namespace
sdbc
{
class
XRow
;
}
}}}
namespace
ucbhelper
{
class
Content
;
}
namespace
cmis
{
#define CMIS_FILE_TYPE "application/vnd.sun.staroffice.cmis-file"
#define CMIS_FOLDER_TYPE "application/vnd.sun.staroffice.cmis-folder"
class
ContentProvider
;
class
ContentProperties
;
class
Content
:
public
::
ucbhelper
::
ContentImplHelper
,
public
com
::
sun
::
star
::
ucb
::
XContentCreator
{
private
:
ContentProvider
*
m_pProvider
;
bool
isFolder
(
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XCommandEnvironment
>&
xEnv
);
com
::
sun
::
star
::
uno
::
Any
getBadArgExcept
();
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
sdbc
::
XRow
>
getPropertyValues
(
const
com
::
sun
::
star
::
uno
::
Sequence
<
com
::
sun
::
star
::
beans
::
Property
>&
rProperties
,
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XCommandEnvironment
>&
xEnv
);
private
:
typedef
rtl
::
Reference
<
Content
>
ContentRef
;
typedef
std
::
list
<
ContentRef
>
ContentRefList
;
void
queryChildren
(
ContentRefList
&
rChildren
);
com
::
sun
::
star
::
uno
::
Any
open
(
const
com
::
sun
::
star
::
ucb
::
OpenCommandArgument2
&
rArg
,
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XCommandEnvironment
>
&
xEnv
)
throw
(
com
::
sun
::
star
::
uno
::
Exception
);
void
transfer
(
const
com
::
sun
::
star
::
ucb
::
TransferInfo
&
rTransferInfo
,
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XCommandEnvironment
>
&
xEnv
)
throw
(
com
::
sun
::
star
::
uno
::
Exception
);
void
insert
(
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
io
::
XInputStream
>
&
xInputStream
,
sal_Bool
bReplaceExisting
,
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XCommandEnvironment
>&
xEnv
)
throw
(
com
::
sun
::
star
::
uno
::
Exception
);
void
destroy
(
sal_Bool
bDeletePhysical
)
throw
(
com
::
sun
::
star
::
uno
::
Exception
);
void
copyData
(
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
io
::
XInputStream
>
xIn
,
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
io
::
XOutputStream
>
xOut
);
com
::
sun
::
star
::
uno
::
Sequence
<
com
::
sun
::
star
::
uno
::
Any
>
setPropertyValues
(
const
com
::
sun
::
star
::
uno
::
Sequence
<
com
::
sun
::
star
::
beans
::
PropertyValue
>&
rValues
,
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XCommandEnvironment
>&
xEnv
);
sal_Bool
feedSink
(
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
uno
::
XInterface
>
aSink
,
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XCommandEnvironment
>&
xEnv
);
sal_Bool
exchangeIdentity
(
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XContentIdentifier
>&
xNewId
);
public
:
Content
(
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
lang
::
XMultiServiceFactory
>&
rxSMgr
,
ContentProvider
*
pProvider
,
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XContentIdentifier
>&
Identifier
)
throw
(
com
::
sun
::
star
::
ucb
::
ContentCreationException
);
Content
(
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
lang
::
XMultiServiceFactory
>&
rxSMgr
,
ContentProvider
*
pProvider
,
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XContentIdentifier
>&
Identifier
,
sal_Bool
bIsFolder
)
throw
(
com
::
sun
::
star
::
ucb
::
ContentCreationException
);
virtual
~
Content
();
virtual
com
::
sun
::
star
::
uno
::
Sequence
<
com
::
sun
::
star
::
beans
::
Property
>
getProperties
(
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XCommandEnvironment
>
&
xEnv
);
virtual
com
::
sun
::
star
::
uno
::
Sequence
<
com
::
sun
::
star
::
ucb
::
CommandInfo
>
getCommands
(
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XCommandEnvironment
>
&
xEnv
);
virtual
::
rtl
::
OUString
getParentURL
();
XINTERFACE_DECL
()
XTYPEPROVIDER_DECL
()
virtual
::
rtl
::
OUString
SAL_CALL
getImplementationName
()
throw
(
com
::
sun
::
star
::
uno
::
RuntimeException
);
virtual
com
::
sun
::
star
::
uno
::
Sequence
<
::
rtl
::
OUString
>
SAL_CALL
getSupportedServiceNames
()
throw
(
com
::
sun
::
star
::
uno
::
RuntimeException
);
virtual
rtl
::
OUString
SAL_CALL
getContentType
()
throw
(
com
::
sun
::
star
::
uno
::
RuntimeException
);
virtual
com
::
sun
::
star
::
uno
::
Any
SAL_CALL
execute
(
const
com
::
sun
::
star
::
ucb
::
Command
&
aCommand
,
sal_Int32
CommandId
,
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XCommandEnvironment
>&
Environment
)
throw
(
com
::
sun
::
star
::
uno
::
Exception
,
com
::
sun
::
star
::
ucb
::
CommandAbortedException
,
com
::
sun
::
star
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
abort
(
sal_Int32
CommandId
)
throw
(
com
::
sun
::
star
::
uno
::
RuntimeException
);
virtual
com
::
sun
::
star
::
uno
::
Sequence
<
com
::
sun
::
star
::
ucb
::
ContentInfo
>
SAL_CALL
queryCreatableContentsInfo
()
throw
(
com
::
sun
::
star
::
uno
::
RuntimeException
);
virtual
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XContent
>
SAL_CALL
createNewContent
(
const
com
::
sun
::
star
::
ucb
::
ContentInfo
&
Info
)
throw
(
com
::
sun
::
star
::
uno
::
RuntimeException
);
com
::
sun
::
star
::
uno
::
Sequence
<
com
::
sun
::
star
::
ucb
::
ContentInfo
>
queryCreatableContentsInfo
(
const
com
::
sun
::
star
::
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XCommandEnvironment
>&
xEnv
)
throw
(
com
::
sun
::
star
::
uno
::
RuntimeException
);
};
}
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
ucb/source/ucp/cmis/cmis_provider.cxx
0 → 100644
Dosyayı görüntüle @
61db713e
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* Version: MPL 1.1 / GPLv3+ / LGPLv3+
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License or as specified alternatively below. You may obtain a copy of
* the License at http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* Major Contributor(s):
* [ Copyright (C) 2011 SUSE <cbosdonnat@suse.com> (initial developer) ]
*
* All Rights Reserved.
*
* For minor contributions see the git repository.
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 3 or later (the "GPLv3+"), or
* the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
* in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
* instead of those above.
*/
#include <ucbhelper/contentidentifier.hxx>
#include <ucbhelper/contenthelper.hxx>
#include <com/sun/star/ucb/ContentCreationException.hpp>
#include "cmis_provider.hxx"
#include "cmis_content.hxx"
#include <stdio.h>
using
namespace
com
::
sun
::
star
;
namespace
cmis
{
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XContent
>
SAL_CALL
ContentProvider
::
queryContent
(
const
uno
::
Reference
<
com
::
sun
::
star
::
ucb
::
XContentIdentifier
>&
Identifier
)
throw
(
com
::
sun
::
star
::
ucb
::
IllegalIdentifierException
,
uno
::
RuntimeException
)
{
#ifdef DEBUG
fprintf
(
stderr
,
"QueryContent: '%s'"
,
(
const
sal_Char
*
)
rtl
::
OUStringToOString
(
Identifier
->
getContentIdentifier
(),
RTL_TEXTENCODING_UTF8
));
#endif
osl
::
MutexGuard
aGuard
(
m_aMutex
);
// Check, if a content with given id already exists...
uno
::
Reference
<
ucb
::
XContent
>
xContent
=
queryExistingContent
(
Identifier
).
get
();
if
(
xContent
.
is
()
)
return
xContent
;
try
{
xContent
=
new
::
cmis
::
Content
(
m_xSMgr
,
this
,
Identifier
);
}
catch
(
com
::
sun
::
star
::
ucb
::
ContentCreationException
const
&
)
{
throw
com
::
sun
::
star
::
ucb
::
IllegalIdentifierException
();
}
if
(
!
xContent
->
getIdentifier
().
is
()
)
throw
com
::
sun
::
star
::
ucb
::
IllegalIdentifierException
();
return
xContent
;
}
ContentProvider
::
ContentProvider
(
const
uno
::
Reference
<
lang
::
XMultiServiceFactory
>&
rSMgr
)
:
::
ucbhelper
::
ContentProviderImplHelper
(
rSMgr
)
{
}
ContentProvider
::~
ContentProvider
()
{
}
XINTERFACE_IMPL_3
(
ContentProvider
,
lang
::
XTypeProvider
,
lang
::
XServiceInfo
,
com
::
sun
::
star
::
ucb
::
XContentProvider
);
XTYPEPROVIDER_IMPL_3
(
ContentProvider
,
lang
::
XTypeProvider
,
lang
::
XServiceInfo
,
com
::
sun
::
star
::
ucb
::
XContentProvider
);
XSERVICEINFO_IMPL_1
(
ContentProvider
,
rtl
::
OUString
(
RTL_CONSTASCII_USTRINGPARAM
(
"com.sun.star.comp.CmisContentProvider"
)),
rtl
::
OUString
(
RTL_CONSTASCII_USTRINGPARAM
(
"com.sun.star.ucb.CmisContentProvider"
))
);
ONE_INSTANCE_SERVICE_FACTORY_IMPL
(
ContentProvider
);
}
extern
"C"
SAL_DLLPUBLIC_EXPORT
void
*
SAL_CALL
component_getFactory
(
const
sal_Char
*
pImplName
,
void
*
pServiceManager
,
void
*
)
{
void
*
pRet
=
0
;
uno
::
Reference
<
lang
::
XMultiServiceFactory
>
xSMgr
(
reinterpret_cast
<
lang
::
XMultiServiceFactory
*
>
(
pServiceManager
)
);
uno
::
Reference
<
lang
::
XSingleServiceFactory
>
xFactory
;
if
(
!::
cmis
::
ContentProvider
::
getImplementationName_Static
().
compareToAscii
(
pImplName
)
)
xFactory
=
::
cmis
::
ContentProvider
::
createServiceFactory
(
xSMgr
);
if
(
xFactory
.
is
()
)
{
xFactory
->
acquire
();
pRet
=
xFactory
.
get
();
}
return
pRet
;
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
ucb/source/ucp/cmis/cmis_provider.hxx
0 → 100644
Dosyayı görüntüle @
61db713e
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* Version: MPL 1.1 / GPLv3+ / LGPLv3+
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License or as specified alternatively below. You may obtain a copy of
* the License at http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* Major Contributor(s):
* [ Copyright (C) 2011 SUSE <cbosdonnat@suse.com> (initial developer) ]
*
* All Rights Reserved.
*
* For minor contributions see the git repository.
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 3 or later (the "GPLv3+"), or
* the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
* in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
* instead of those above.
*/
#ifndef CMIS_PROVIDER_HXX
#define CMIS_PROVIDER_HXX
#include <com/sun/star/beans/Property.hpp>
#include <ucbhelper/providerhelper.hxx>
namespace
cmis
{
class
ContentProvider
:
public
::
ucbhelper
::
ContentProviderImplHelper
{
public
:
ContentProvider
(
const
::
com
::
sun
::
star
::
uno
::
Reference
<
::
com
::
sun
::
star
::
lang
::
XMultiServiceFactory
>&
rSMgr
);
virtual
~
ContentProvider
();
// XInterface
XINTERFACE_DECL
()
// XTypeProvider
XTYPEPROVIDER_DECL
()
// XServiceInfo
XSERVICEINFO_DECL
()
// XContentProvider
virtual
::
com
::
sun
::
star
::
uno
::
Reference
<
::
com
::
sun
::
star
::
ucb
::
XContent
>
SAL_CALL
queryContent
(
const
::
com
::
sun
::
star
::
uno
::
Reference
<
::
com
::
sun
::
star
::
ucb
::
XContentIdentifier
>&
Identifier
)
throw
(
::
com
::
sun
::
star
::
ucb
::
IllegalIdentifierException
,
::
com
::
sun
::
star
::
uno
::
RuntimeException
);
};
}
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
ucb/source/ucp/cmis/makefile.mk
0 → 100644
Dosyayı görüntüle @
61db713e
#
# Version: MPL 1.1 / GPLv3+ / LGPLv3+
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License or as specified alternatively below. You may obtain a copy of
# the License at http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# Major Contributor(s):
# [ Copyright (C) 2011 SUSE <cbosdonnat@suse.com> (initial developer) ]
#
# All Rights Reserved.
#
# For minor contributions see the git repository.
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
# instead of those above.
#
PRJ
=
..
$/
..
$/
..
PRJNAME
=
ucb
# Version
UCPCMIS_MAJOR
=
1
TARGET
=
ucpcmis
ENABLE_EXCEPTIONS
=
TRUE
USE_DEFFILE
=
TRUE
NO_BSYMBOLIC
=
TRUE
.INCLUDE
:
settings.mk
.IF
"$(L10N_framework)"
==
""
# no "lib" prefix
DLLPRE
=
SLOFILES
=
$(SLO)$/
cmis_provider.obj
\
$(SLO)$/
cmis_content.obj
SHL1TARGET
=
$(TARGET)$(UCPCMIS_MAJOR)
.uno
SHL1DEF
=
$(MISC)$/$(SHL1TARGET)
.def
SHL1LIBS
=
$(SLB)$/$(TARGET)
.lib
SHL1IMPLIB
=
i
$(TARGET)
SHL1STDLIBS
=
\
$(CPPUHELPERLIB)
\
$(CPPULIB)
\
$(SALLIB)
\
$(SALHELPERLIB)
\
$(UCBHELPERLIB)
\
$(CMISLIB)
SHL1VERSIONMAP
=
$(SOLARENV)
/src/component.map
.ENDIF
# L10N_framework
.INCLUDE
:
target.mk
ALLTAR
:
$(MISC)/ucpcmis.component
$(MISC)/ucpcmis.component .ERRREMOVE
:
$(SOLARENV)/bin/createcomponent.xslt
\
ucpcmis.component
$(XSLTPROC)
--nonet
--stringparam
uri
\
'$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)'
-o
$@
\
$(SOLARENV)/bin/createcomponent.xslt
ucpcmis.component
ucb/source/ucp/cmis/ucpcmis.component
0 → 100644
Dosyayı görüntüle @
61db713e
<?xml version="1.0" encoding="UTF-8"?>
<!--**********************************************************************
* Version: MPL 1.1 / GPLv3+ / LGPLv3+
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License or as specified alternatively below. You may obtain a copy of
* the License at http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* Major Contributor(s):
* [ Copyright (C) 2011 SUSE <cbosdonnat@suse.com> (initial developer) ]
*
* All Rights Reserved.
*
* For minor contributions see the git repository.
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 3 or later (the "GPLv3+"), or
* the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
* in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
* instead of those above.
**********************************************************************-->
<component
loader=
"com.sun.star.loader.SharedLibrary"
xmlns=
"http://openoffice.org/2010/uno-components"
>
<implementation
name=
"com.sun.star.comp.CmisContentProvider"
>
<service
name=
"com.sun.star.ucb.CmisContentProvider"
/>
</implementation>
</component>
ucb/source/ucp/cmis/ucpcmis.xml
0 → 100644
Dosyayı görüntüle @
61db713e
<?xml version="1.0" encoding="UTF-8"?>
<!--**********************************************************************
* Version: MPL 1.1 / GPLv3+ / LGPLv3+
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License or as specified alternatively below. You may obtain a copy of
* the License at http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* Major Contributor(s):
* [ Copyright (C) 2011 SUSE <cbosdonnat@suse.com> (initial developer) ]
*
* All Rights Reserved.
*
* For minor contributions see the git repository.
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 3 or later (the "GPLv3+"), or
* the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
* in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
* instead of those above.
**********************************************************************-->
<!DOCTYPE module-description PUBLIC "-//StarOffice//DTD ComponentDescription 1.0//EN" "module-description.dtd">
<module-description
xmlns:xlink=
"http://www.w3.org/1999/xlink"
>
<module-name>
ucpcmis
</module-name>
<component-description>
<author>
Cédric Bosdonnat
</author>
<name>
com.sun.star.comp.ucb.CmisContentProvider
</name>
<description>
This component implements a Content Provider for the Universal
Content Broker. It provides access to contents stored on a
CMIS-enabled server.
</description>
<loader-name>
com.sun.star.loader.SharedLibrary
</loader-name>
<language>
c++
</language>
<status
value=
"final"
/>
<supported-service>
com.sun.star.ucb.CmisContentProvider
</supported-service>
<service-dependency>
com.sun.star.configuration.ConfigurationAccess
</service-dependency>
<service-dependency>
com.sun.star.configuration.ConfigurationProvider
</service-dependency>
</component-description>
<project-build-dependency>
external
</project-build-dependency>
<project-build-dependency>
sal
</project-build-dependency>
<project-build-dependency>
cppu
</project-build-dependency>
<project-build-dependency>
cppuhelper
</project-build-dependency>
<project-build-dependency>
ucbhelper
</project-build-dependency>
<runtime-module-dependency>
sal3
</runtime-module-dependency>
<runtime-module-dependency>
cppu3
</runtime-module-dependency>
<runtime-module-dependency>
cppuhelper3$(COM)
</runtime-module-dependency>
<runtime-module-dependency>
ucbhelper4$(COM)
</runtime-module-dependency>
<type>
com.sun.star.beans.PropertyAttribute
</type>
<type>
com.sun.star.beans.PropertyValue
</type>
<type>
com.sun.star.beans.XPropertiesChangeNotifier
</type>
<type>
com.sun.star.beans.XPropertyAccess
</type>
<type>
com.sun.star.beans.XPropertyContainer
</type>
<type>
com.sun.star.beans.XPropertySetInfoChangeNotifier
</type>
<type>
com.sun.star.container.XChild
</type>
<type>
com.sun.star.container.XNameAccess
</type>
<type>
com.sun.star.io.XActiveDataSink
</type>
<type>
com.sun.star.io.XInputStream
</type>
<type>
com.sun.star.io.XOutputStream
</type>
<type>
com.sun.star.io.XSeekable
</type>
<type>
com.sun.star.lang.IllegalAccessException
</type>
<type>
com.sun.star.lang.XComponent
</type>
<type>
com.sun.star.lang.XMultiServiceFactory
</type>
<type>
com.sun.star.lang.XServiceInfo
</type>
<type>
com.sun.star.lang.XSingleServiceFactory
</type>
<type>
com.sun.star.lang.XTypeProvider
</type>
<type>
com.sun.star.registry.XRegistryKey
</type>
<type>
com.sun.star.sdbc.XCloseable
</type>
<type>
com.sun.star.sdbc.XColumnLocate
</type>
<type>
com.sun.star.sdbc.XResultSetMetaDataSupplier
</type>
<type>
com.sun.star.sdbc.XRow
</type>
<type>
com.sun.star.ucb.ContentCreationException
</type>
<type>
com.sun.star.ucb.ContentInfoAttribute
</type>
<type>
com.sun.star.ucb.InsertCommandArgument
</type>
<type>
com.sun.star.ucb.MissingInputStreamException
</type>
<type>
com.sun.star.ucb.MissingPropertiesException
</type>
<type>
com.sun.star.ucb.NameClash
</type>
<type>
com.sun.star.ucb.NameClashException
</type>
<type>
com.sun.star.ucb.OpenCommandArgument2
</type>
<type>
com.sun.star.ucb.OpenMode
</type>
<type>
com.sun.star.ucb.PostCommandArgument2
</type>
<type>
com.sun.star.ucb.RememberAuthentication
</type>
<type>
com.sun.star.ucb.ResultSetException
</type>
<type>
com.sun.star.ucb.TransferInfo
</type>
<type>
com.sun.star.ucb.XCommandEnvironment
</type>
<type>
com.sun.star.ucb.UnsupportedCommandException
</type>
<type>
com.sun.star.ucb.UnsupportedDataSinkException
</type>
<type>
com.sun.star.ucb.UnsupportedNameClashException
</type>
<type>
com.sun.star.ucb.UnsupportedOpenModeException
</type>
<type>
com.sun.star.ucb.XCommandInfo
</type>
<type>
com.sun.star.ucb.XCommandInfoChangeNotifier
</type>
<type>
com.sun.star.ucb.XCommandProcessor
</type>
<type>
com.sun.star.ucb.XContentAccess
</type>
<type>
com.sun.star.ucb.XContentProvider
</type>
<type>
com.sun.star.ucb.XDynamicResultSet
</type>
<type>
com.sun.star.ucb.XPersistentPropertySet
</type>
<type>
com.sun.star.util.DateTime
</type>
</module-description>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment