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