import java.io.EOFException;
import java.io.IOException;
+import java.util.Collections;
+import java.util.List;
import java.util.concurrent.atomic.AtomicReference;
import java.util.logging.Logger;
+import net.pterodactylus.sonitus.data.Controller;
import net.pterodactylus.sonitus.data.Metadata;
import net.pterodactylus.sonitus.data.Source;
+import net.pterodactylus.sonitus.data.event.MetadataUpdated;
import net.pterodactylus.sonitus.data.event.SourceFinishedEvent;
import com.google.common.eventbus.EventBus;
/** Whether the source was changed. */
private boolean sourceChanged;
+ /**
+ * Creates a new multi source.
+ *
+ * @param eventBus
+ * The event bus
+ */
@Inject
public MultiSource(EventBus eventBus) {
this.eventBus = eventBus;
sourceChanged = true;
this.source.notifyAll();
}
+ eventBus.post(new MetadataUpdated(this, source.metadata()));
logger.info(String.format("Next Source set: %s", source));
}
}
//
+ // CONTROLLED METHODS
+ //
+
+ @Override
+ public String name() {
+ return "Multisource";
+ }
+
+ @Override
+ public List<Controller<?>> controllers() {
+ return Collections.emptyList();
+ }
+
+ //
// SOURCE METHODS
//