package com.github.czyzby.autumn.mvc.component.ui.dto; import com.badlogic.gdx.audio.Music; import com.badlogic.gdx.utils.Array; import com.github.czyzby.autumn.mvc.component.asset.AssetService; import com.github.czyzby.autumn.mvc.component.ui.controller.impl.AnnotatedViewController; /** Utility action executed after all themes are loaded. * * @author MJ */ public class ThemesAssignmentAction implements Runnable { private final String[] themes; private final AnnotatedViewController viewConroller; private final AssetService assetService; public ThemesAssignmentAction(final String[] themes, final AnnotatedViewController viewConroller, final AssetService assetService) { this.themes = themes; this.viewConroller = viewConroller; this.assetService = assetService; } @Override public void run() { final Array<Music> musicThemes = viewConroller.getThemes(); for (final String theme : themes) { musicThemes.add(assetService.get(theme, Music.class)); } } }