<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"
	default-autowire="byName" default-lazy-init="true">
	
	<bean id="equalizerPresetsReader" class="net.sourceforge.atunes.kernel.modules.player.EqualizerPresetsReader" scope="prototype">
		<property name="presetsFile" value="/settings/presets.properties"/>
	</bean>
	<bean id="equalizerPresets" factory-bean="equalizerPresetsReader" factory-method="getPresetsFromBundle"/>
	<bean id="equalizer" class="net.sourceforge.atunes.kernel.modules.player.Equalizer">
		<property name="presets" ref="equalizerPresets"/>
	</bean>
	
	<bean id="abstractPlayerEngine" class="net.sourceforge.atunes.kernel.modules.player.AbstractPlayerEngine" abstract="true"/>
	
	<bean id="mplayerEngine" class="net.sourceforge.atunes.kernel.modules.player.mplayer.MPlayerEngine" parent="abstractPlayerEngine">
		<property name="processBuilder" ref="mplayerProcessBuilder"/>
	</bean>
	<bean id="mplayerProcessBuilder" class="net.sourceforge.atunes.kernel.modules.player.mplayer.MPlayerProcessBuilder">
		<property name="engine" ref="mplayerEngine"/>
	</bean>
	
	<bean id="engines" class="java.util.ArrayList">
		<constructor-arg>
			<list>
				<ref bean="mplayerEngine"/>
			</list>
		</constructor-arg>
	</bean>
	
	<bean id="volumeController" class="net.sourceforge.atunes.kernel.modules.player.Volume"/>
	
	<bean id="playerEngineInitializer" class="net.sourceforge.atunes.kernel.modules.player.PlayerEngineSelector" scope="prototype"/>

	<bean id="playerControlsController" class="net.sourceforge.atunes.kernel.modules.player.PlayerControlsController" init-method="initialize"/>
	
	<bean id="volumeSliderMouseWheelListener" class="net.sourceforge.atunes.kernel.modules.player.VolumeSliderMouseWheelListener"/>
	<bean id="volumeSliderChangeListener" class="net.sourceforge.atunes.kernel.modules.player.VolumeSliderChangeListener"/>
	
	<bean id="similarArtistMode" class="net.sourceforge.atunes.kernel.modules.player.SimilarArtistMode" init-method="initialize"/>
	<bean class="net.sourceforge.atunes.kernel.modules.player.GetSimilarArtistAudioObjectsCallable" scope="prototype"/>

</beans>
