X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsonitus%2Fdata%2Fsource%2FFileSource.java;h=2829a4205c74089cd4b97af61661ab71ec08e517;hb=87436ac0b103a112722c1df835e11ec928e57d38;hp=3d6e871903a063ba7babd937e1a216ed5733a634;hpb=7188da95cfb6dc2bf140eb8ac7e4dc99a0761a97;p=sonitus.git
diff --git a/src/main/java/net/pterodactylus/sonitus/data/source/FileSource.java b/src/main/java/net/pterodactylus/sonitus/data/source/FileSource.java
index 3d6e871..2829a42 100644
--- a/src/main/java/net/pterodactylus/sonitus/data/source/FileSource.java
+++ b/src/main/java/net/pterodactylus/sonitus/data/source/FileSource.java
@@ -18,16 +18,17 @@
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.AbstractControlledComponent;
+import net.pterodactylus.sonitus.data.Controller;
import net.pterodactylus.sonitus.data.Metadata;
import net.pterodactylus.sonitus.data.Source;
import net.pterodactylus.sonitus.io.IdentifyingInputStream;
@@ -40,7 +41,7 @@ import com.google.common.base.Optional;
*
* @author David âBombeâ Roden
*/
-public class FileSource implements Source {
+public class FileSource extends AbstractControlledComponent implements Source {
/** The path of the file. */
private final String path;
@@ -69,11 +70,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> controllers() {
+ return Collections.emptyList();
+ }
+
+ //
// SOURCE METHODS
//