1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2000, 2010 Oracle and/or its affiliates.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * This file is part of OpenOffice.org.
10  *
11  * OpenOffice.org is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * OpenOffice.org is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU Lesser General Public License version 3 for more details
19  * (a copy is included in the LICENSE file that accompanied this code).
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * version 3 along with OpenOffice.org.  If not, see
23  * <http://www.openoffice.org/license.html>
24  * for a copy of the LGPLv3 License.
25  *
26  ************************************************************************/
27 
28 #include "gstmanager.hxx"
29 #include "gstplayer.hxx"
30 
31 using namespace ::com::sun::star;
32 
33 namespace avmedia
34 {
35 namespace gst
36 {
37 // ----------------
38 // - Manager -
39 // ----------------
40 
41 Manager::Manager( const uno::Reference< lang::XMultiServiceFactory >& rxMgr ) :
42     mxMgr( rxMgr )
43 {}
44 
45 // ------------------------------------------------------------------------------
46 
47 Manager::~Manager()
48 {}
49 
50 // ------------------------------------------------------------------------------
51 
52 uno::Reference< media::XPlayer > SAL_CALL Manager::createPlayer( const ::rtl::OUString& rURL )
53      throw( uno::RuntimeException )
54 {
55     return( ::avmedia::gst::Player::create( rURL ) );
56 }
57 
58 // ------------------------------------------------------------------------------
59 
60 ::rtl::OUString SAL_CALL Manager::getImplementationName()
61      throw( uno::RuntimeException )
62 {
63     return( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_GSTREAMER_MANAGER_IMPLEMENTATIONNAME ) ) );
64 }
65 
66 // ------------------------------------------------------------------------------
67 
68 sal_Bool SAL_CALL Manager::supportsService( const ::rtl::OUString& ServiceName )
69      throw( uno::RuntimeException )
70 {
71     return( ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( AVMEDIA_GSTREAMER_MANAGER_SERVICENAME ) ) );
72 }
73 
74 // ------------------------------------------------------------------------------
75 
76 uno::Sequence< ::rtl::OUString > SAL_CALL Manager::getSupportedServiceNames()
77      throw( uno::RuntimeException )
78 {
79     uno::Sequence< ::rtl::OUString > aRet( 1 );
80     aRet[ 0 ] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_GSTREAMER_MANAGER_SERVICENAME ) );
81 
82     return( aRet );
83 }
84 } // namespace gst
85 } // namespace avmedia
86