public void command ( String command , Playlist playlist , Progress progress , TrackInfo trackInfo , Volume volume ) { Optional < Identification > ownIdentification = IdentificationManagerM . getInstance ( ) . getIdentification ( this ) ; Optional < Identification > playerIdentification = IdentificationManagerM . getInstance ( ) . getIdentification ( player ) ; if ( ! ownIdentification . isPresent ( ) || ! playerIdentification . isPresent ( ) ) { error ( "unable to obtain id" ) ; return ; } Optional < PlayerCommand > playerCommand = PlayerCommand . createPlayerCommand ( ownIdentification . get ( ) , playerIdentification . get ( ) , command , player . getCapabilities ( ) , getContext ( ) ) ; if ( playlist != null ) { playerCommand . get ( ) . addResource ( new PlaylistResource ( ownIdentification . get ( ) , playlist ) ) ; } if ( progress != null ) { playerCommand . get ( ) . addResource ( new ProgressResource ( ownIdentification . get ( ) , progress ) ) ; } if ( trackInfo != null ) { playerCommand . get ( ) . addResource ( new TrackInfoResource ( ownIdentification . get ( ) , trackInfo ) ) ; } if ( volume != null ) { playerCommand . get ( ) . addResource ( new VolumeResource ( ownIdentification . get ( ) , volume ) ) ; } fire ( playerCommand . get ( ) , 5 ) ; }
commands the player to fulfill the command