Add name to all controlled components.
[sonitus.git] / src / main / java / net / pterodactylus / sonitus / data / source / FileSource.java
index 3d6e871..766d7de 100644 (file)
 package net.pterodactylus.sonitus.data.source;
 
 import static com.google.common.base.Preconditions.checkNotNull;
-import static net.pterodactylus.sonitus.data.Metadata.UNKNOWN_CHANNELS;
-import static net.pterodactylus.sonitus.data.Metadata.UNKNOWN_ENCODING;
-import static net.pterodactylus.sonitus.data.Metadata.UNKNOWN_FREQUENCY;
 
 import java.io.EOFException;
 import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
 
+import net.pterodactylus.sonitus.data.Controller;
 import net.pterodactylus.sonitus.data.Metadata;
 import net.pterodactylus.sonitus.data.Source;
 import net.pterodactylus.sonitus.io.IdentifyingInputStream;
@@ -69,11 +69,25 @@ public class FileSource implements Source {
                        metadata = identifyingInputStream.get().metadata();
                } else {
                        /* fallback. */
-                       metadata = new Metadata(UNKNOWN_CHANNELS, UNKNOWN_FREQUENCY, UNKNOWN_ENCODING).name(path);
+                       metadata = new Metadata().name(path);
                }
        }
 
        //
+       // CONTROLLED METHODS
+       //
+
+       @Override
+       public String name() {
+               return path;
+       }
+
+       @Override
+       public List<Controller<?>> controllers() {
+               return Collections.emptyList();
+       }
+
+       //
        // SOURCE METHODS
        //