xref: /AOO42X/main/avmedia/source/macavf/macavf_manager.cxx (revision b1c5455db1639c48e26c568e4fa7ee78ca5d60ee)
1e8649ecdSHerbert Dürr /**************************************************************
2e8649ecdSHerbert Dürr  *
3e8649ecdSHerbert Dürr  * Licensed to the Apache Software Foundation (ASF) under one
4e8649ecdSHerbert Dürr  * or more contributor license agreements.  See the NOTICE file
5e8649ecdSHerbert Dürr  * distributed with this work for additional information
6e8649ecdSHerbert Dürr  * regarding copyright ownership.  The ASF licenses this file
7e8649ecdSHerbert Dürr  * to you under the Apache License, Version 2.0 (the
8e8649ecdSHerbert Dürr  * "License"); you may not use this file except in compliance
9e8649ecdSHerbert Dürr  * with the License.  You may obtain a copy of the License at
10e8649ecdSHerbert Dürr  *
11e8649ecdSHerbert Dürr  *   http://www.apache.org/licenses/LICENSE-2.0
12e8649ecdSHerbert Dürr  *
13e8649ecdSHerbert Dürr  * Unless required by applicable law or agreed to in writing,
14e8649ecdSHerbert Dürr  * software distributed under the License is distributed on an
15e8649ecdSHerbert Dürr  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16e8649ecdSHerbert Dürr  * KIND, either express or implied.  See the License for the
17e8649ecdSHerbert Dürr  * specific language governing permissions and limitations
18e8649ecdSHerbert Dürr  * under the License.
19e8649ecdSHerbert Dürr  *
20e8649ecdSHerbert Dürr  *************************************************************/
21e8649ecdSHerbert Dürr 
22e8649ecdSHerbert Dürr #include "macavf_manager.hxx"
23e8649ecdSHerbert Dürr #include "macavf_player.hxx"
24e8649ecdSHerbert Dürr 
25e8649ecdSHerbert Dürr #include <tools/urlobj.hxx>
26e8649ecdSHerbert Dürr 
27e8649ecdSHerbert Dürr using namespace ::com::sun::star;
28e8649ecdSHerbert Dürr 
29e8649ecdSHerbert Dürr namespace avmedia { namespace macavf {
30e8649ecdSHerbert Dürr 
31e8649ecdSHerbert Dürr // ----------------
32e8649ecdSHerbert Dürr // - Manager -
33e8649ecdSHerbert Dürr // ----------------
34e8649ecdSHerbert Dürr 
Manager(const uno::Reference<uno::XComponentContext> & rxContext)35*652e100fSDamjan Jovanovic Manager::Manager( const uno::Reference< uno::XComponentContext >& rxContext ) :
36*652e100fSDamjan Jovanovic     mxContext( rxContext )
37e8649ecdSHerbert Dürr {
38e8649ecdSHerbert Dürr     OSL_TRACE( "Constructing avmedia::macavf::Manager" );
39e8649ecdSHerbert Dürr }
40e8649ecdSHerbert Dürr 
41e8649ecdSHerbert Dürr // ------------------------------------------------------------------------------
42e8649ecdSHerbert Dürr 
~Manager()43e8649ecdSHerbert Dürr Manager::~Manager()
44e8649ecdSHerbert Dürr {}
45e8649ecdSHerbert Dürr 
46e8649ecdSHerbert Dürr // ------------------------------------------------------------------------------
47e8649ecdSHerbert Dürr 
createPlayer(const::rtl::OUString & rURL)48e8649ecdSHerbert Dürr uno::Reference< media::XPlayer > SAL_CALL Manager::createPlayer( const ::rtl::OUString& rURL )
49e8649ecdSHerbert Dürr     throw (uno::RuntimeException)
50e8649ecdSHerbert Dürr {
51*652e100fSDamjan Jovanovic     Player*                             pPlayer( new Player( mxContext ) );
52e8649ecdSHerbert Dürr     uno::Reference< media::XPlayer >    xRet( pPlayer );
53e8649ecdSHerbert Dürr     INetURLObject                       aURL( rURL );
54e8649ecdSHerbert Dürr 
55e8649ecdSHerbert Dürr     OSL_TRACE( "avmediamacavf: Manager::createPlayer" );
56e8649ecdSHerbert Dürr 
57e8649ecdSHerbert Dürr     if( !pPlayer->create( aURL.GetMainURL( INetURLObject::DECODE_UNAMBIGUOUS ) )  )
58e8649ecdSHerbert Dürr         xRet = uno::Reference< media::XPlayer >();
59e8649ecdSHerbert Dürr 
60e8649ecdSHerbert Dürr     return xRet;
61e8649ecdSHerbert Dürr }
62e8649ecdSHerbert Dürr 
63e8649ecdSHerbert Dürr // ------------------------------------------------------------------------------
64e8649ecdSHerbert Dürr 
getImplementationName()65e8649ecdSHerbert Dürr ::rtl::OUString SAL_CALL Manager::getImplementationName(  )
66e8649ecdSHerbert Dürr     throw (uno::RuntimeException)
67e8649ecdSHerbert Dürr {
68*652e100fSDamjan Jovanovic     return getImplementationName_Static();
69e8649ecdSHerbert Dürr }
70e8649ecdSHerbert Dürr 
71e8649ecdSHerbert Dürr // ------------------------------------------------------------------------------
72e8649ecdSHerbert Dürr 
supportsService(const::rtl::OUString & ServiceName)73e8649ecdSHerbert Dürr sal_Bool SAL_CALL Manager::supportsService( const ::rtl::OUString& ServiceName )
74e8649ecdSHerbert Dürr     throw (uno::RuntimeException)
75e8649ecdSHerbert Dürr {
76e8649ecdSHerbert Dürr     return ServiceName.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM ( AVMEDIA_MACAVF_MANAGER_SERVICENAME ) );
77e8649ecdSHerbert Dürr }
78e8649ecdSHerbert Dürr 
79e8649ecdSHerbert Dürr // ------------------------------------------------------------------------------
80e8649ecdSHerbert Dürr 
getSupportedServiceNames()81e8649ecdSHerbert Dürr uno::Sequence< ::rtl::OUString > SAL_CALL Manager::getSupportedServiceNames(  )
82e8649ecdSHerbert Dürr     throw (uno::RuntimeException)
83e8649ecdSHerbert Dürr {
84*652e100fSDamjan Jovanovic     return getSupportedServiceNames_Static();
85*652e100fSDamjan Jovanovic }
86*652e100fSDamjan Jovanovic 
87*652e100fSDamjan Jovanovic // ------------------------------------------------------------------------------
88*652e100fSDamjan Jovanovic 
getImplementationName_Static()89*652e100fSDamjan Jovanovic ::rtl::OUString SAL_CALL Manager::getImplementationName_Static(  )
90*652e100fSDamjan Jovanovic     throw (uno::RuntimeException)
91*652e100fSDamjan Jovanovic {
92*652e100fSDamjan Jovanovic     return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_MACAVF_MANAGER_IMPLEMENTATIONNAME ) );
93*652e100fSDamjan Jovanovic }
94*652e100fSDamjan Jovanovic 
95*652e100fSDamjan Jovanovic // ------------------------------------------------------------------------------
96*652e100fSDamjan Jovanovic 
getSupportedServiceNames_Static()97*652e100fSDamjan Jovanovic uno::Sequence< ::rtl::OUString > SAL_CALL Manager::getSupportedServiceNames_Static(  )
98*652e100fSDamjan Jovanovic     throw (uno::RuntimeException)
99*652e100fSDamjan Jovanovic {
100e8649ecdSHerbert Dürr     uno::Sequence< ::rtl::OUString > aRet(1);
101e8649ecdSHerbert Dürr     aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( AVMEDIA_MACAVF_MANAGER_SERVICENAME ) );
102e8649ecdSHerbert Dürr 
103e8649ecdSHerbert Dürr     return aRet;
104e8649ecdSHerbert Dürr }
105e8649ecdSHerbert Dürr 
106*652e100fSDamjan Jovanovic 
107e8649ecdSHerbert Dürr } // namespace macavf
108e8649ecdSHerbert Dürr } // namespace avmedia
109