/*
* Created on Jan 28, 2009
* Created by Paul Gardner
*
* Copyright 2009 Vuze, Inc. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License only.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*/
package com.aelitis.azureus.core.devices.impl;
import java.io.File;
import java.io.IOException;
import java.util.List;
import java.util.Map;
import org.gudy.azureus2.core3.util.Debug;
import org.gudy.azureus2.core3.util.IndentWriter;
import com.aelitis.azureus.core.devices.*;
import com.aelitis.net.upnp.UPnPDevice;
public class
DeviceMediaRendererImpl
extends DeviceUPnPImpl
implements DeviceMediaRenderer
{
public
DeviceMediaRendererImpl(
DeviceManagerImpl _manager,
UPnPDevice _device )
{
super( _manager, _device, Device.DT_MEDIA_RENDERER );
}
public
DeviceMediaRendererImpl(
DeviceManagerImpl _manager,
String _classification )
{
super( _manager, Device.DT_MEDIA_RENDERER, _classification );
}
public
DeviceMediaRendererImpl(
DeviceManagerImpl _manager,
String _uuid,
String _classification,
boolean _manual,
String _name )
{
super( _manager, Device.DT_MEDIA_RENDERER, _uuid, _classification, _manual, _name );
}
public
DeviceMediaRendererImpl(
DeviceManagerImpl _manager,
String _uuid,
String _classification,
boolean _manual )
{
super( _manager, Device.DT_MEDIA_RENDERER, _uuid, _classification, _manual );
}
protected
DeviceMediaRendererImpl(
DeviceManagerImpl _manager,
Map _map )
throws IOException
{
super(_manager, _map );
}
@Override
protected boolean
updateFrom(
DeviceImpl _other,
boolean _is_alive )
{
if ( !super.updateFrom( _other, _is_alive )){
return( false );
}
if ( !( _other instanceof DeviceMediaRendererImpl )){
Debug.out( "Inconsistent" );
return( false );
}
DeviceMediaRendererImpl other = (DeviceMediaRendererImpl)_other;
return( true );
}
@Override
protected void
initialise()
{
super.initialise();
}
@Override
protected void
destroy()
{
super.destroy();
}
public boolean
canCopyToDevice()
{
return( false );
}
public int
getCopyToDevicePending()
{
return( 0 );
}
public boolean
canAutoStartDevice()
{
return( false );
}
public boolean
getAutoStartDevice()
{
return( false );
}
public void
setAutoStartDevice(
boolean auto )
{
}
public boolean
canCopyToFolder()
{
return( false );
}
public void
setCanCopyToFolder(
boolean can )
{
// nothing to do
}
public File
getCopyToFolder()
{
return( null );
}
public void
setCopyToFolder(
File file )
{
}
public int
getCopyToFolderPending()
{
return( 0 );
}
public boolean
getAutoCopyToFolder()
{
return( false );
}
public void
setAutoCopyToFolder(
boolean auto )
{
}
public void
manualCopy()
throws DeviceManagerException
{
throw( new DeviceManagerException( "Unsupported" ));
}
public boolean
canShowCategories()
{
return( false );
}
public void
setShowCategories(
boolean b )
{
setPersistentBooleanProperty( PP_REND_SHOW_CAT, b );
}
public boolean
getShowCategories()
{
return( getPersistentBooleanProperty( PP_REND_SHOW_CAT, getShowCategoriesDefault()));
}
protected boolean
getShowCategoriesDefault()
{
return( false );
}
@Override
protected void
getDisplayProperties(
List<String[]> dp )
{
super.getDisplayProperties( dp );
if ( canCopyToFolder()){
addDP( dp, "devices.copy.folder.auto", getAutoCopyToFolder());
addDP( dp, "devices.copy.folder.dest", getCopyToFolder());
}
if ( canShowCategories()){
addDP( dp, "devices.cat.show", getShowCategories());
}
super.getTTDisplayProperties( dp );
}
@Override
public void
generate(
IndentWriter writer )
{
super.generate( writer );
try{
writer.indent();
generateTT( writer );
}finally{
writer.exdent();
}
}
}