Branch data Line data Source code
1 : : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : : /*************************************************************************
3 : : *
4 : : * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 : : *
6 : : * Copyright 2000, 2010 Oracle and/or its affiliates.
7 : : *
8 : : * OpenOffice.org - a multi-platform office productivity suite
9 : : *
10 : : * This file is part of OpenOffice.org.
11 : : *
12 : : * OpenOffice.org is free software: you can redistribute it and/or modify
13 : : * it under the terms of the GNU Lesser General Public License version 3
14 : : * only, as published by the Free Software Foundation.
15 : : *
16 : : * OpenOffice.org is distributed in the hope that it will be useful,
17 : : * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 : : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 : : * GNU Lesser General Public License version 3 for more details
20 : : * (a copy is included in the LICENSE file that accompanied this code).
21 : : *
22 : : * You should have received a copy of the GNU Lesser General Public License
23 : : * version 3 along with OpenOffice.org. If not, see
24 : : * <http://www.openoffice.org/license.html>
25 : : * for a copy of the LGPLv3 License.
26 : : *
27 : : ************************************************************************/
28 : :
29 : :
30 : : /**************************************************************************
31 : : TODO
32 : : **************************************************************************
33 : :
34 : : *************************************************************************/
35 : :
36 : : #include "identify.hxx"
37 : :
38 : : using namespace com::sun::star::uno;
39 : : using namespace com::sun::star::lang;
40 : : using namespace com::sun::star::ucb;
41 : :
42 : : using ::rtl::OUString;
43 : :
44 : : //=========================================================================
45 : : //
46 : : // ContentIdentifier Implementation.
47 : : //
48 : : //=========================================================================
49 : :
50 : 31960 : ContentIdentifier::ContentIdentifier(
51 : : const Reference< XMultiServiceFactory >& rxSMgr,
52 : : const OUString& ContentId )
53 : : : m_xSMgr( rxSMgr ),
54 : 31960 : m_aContentId( ContentId )
55 : : {
56 : 31960 : }
57 : :
58 : : //=========================================================================
59 : : // virtual
60 : 31960 : ContentIdentifier::~ContentIdentifier()
61 : : {
62 [ - + ]: 63920 : }
63 : :
64 : : //=========================================================================
65 : : //
66 : : // XInterface methods.
67 : : //
68 : : //=========================================================================
69 : :
70 [ + - ][ - + ]: 131506 : XINTERFACE_IMPL_2( ContentIdentifier,
[ + - ]
71 : : XTypeProvider,
72 : : XContentIdentifier );
73 : :
74 : : //=========================================================================
75 : : //
76 : : // XTypeProvider methods.
77 : : //
78 : : //=========================================================================
79 : :
80 [ # # ][ # # ]: 0 : XTYPEPROVIDER_IMPL_2( ContentIdentifier,
[ # # ][ # # ]
[ # # ][ # # ]
[ # # ][ # # ]
[ # # ][ # # ]
[ # # ][ # # ]
[ # # ][ # # ]
[ # # ][ # # ]
[ # # ][ # # ]
[ # # ][ # # ]
81 : : XTypeProvider,
82 : : XContentIdentifier );
83 : :
84 : : //=========================================================================
85 : : //
86 : : // XContentIdentifier methods.
87 : : //
88 : : //=========================================================================
89 : :
90 : : // virtual
91 : 65179 : OUString SAL_CALL ContentIdentifier::getContentIdentifier()
92 : : throw( RuntimeException )
93 : : {
94 : 65179 : return m_aContentId;
95 : : }
96 : :
97 : : //=========================================================================
98 : : // virtual
99 : 597 : OUString SAL_CALL ContentIdentifier::getContentProviderScheme()
100 : : throw( RuntimeException )
101 : : {
102 [ + - ][ + - ]: 597 : if ( m_aProviderScheme.isEmpty() && !m_aContentId.isEmpty() )
[ + - ]
103 : : {
104 : : // The content provider scheme is the part before the first ':'
105 : : // within the content id.
106 : 597 : sal_Int32 nPos = m_aContentId.indexOf( ':', 0 );
107 [ + - ]: 597 : if ( nPos != -1 )
108 : : {
109 : 597 : OUString aScheme( m_aContentId.copy( 0, nPos ) );
110 : 597 : m_aProviderScheme = aScheme.toAsciiLowerCase();
111 : : }
112 : : }
113 : :
114 : 597 : return m_aProviderScheme;
115 : : }
116 : :
117 : : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|