aboutsummaryrefslogtreecommitdiffstats
path: root/media.erl
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2010-10-13 11:52:54 +0200
committerAlexander Sulfrian <alexander@sulfrian.net>2010-10-13 11:52:54 +0200
commited7f050a0f6d008b327098ad930c4873d3b3e461 (patch)
tree2fce818b0d6aa0716fce251788b373e1b74f9eb8 /media.erl
parent69c37e13acd820ef48f949afc795bf01d3690ae1 (diff)
downloaderlang-ed7f050a0f6d008b327098ad930c4873d3b3e461.tar.gz
erlang-ed7f050a0f6d008b327098ad930c4873d3b3e461.tar.xz
erlang-ed7f050a0f6d008b327098ad930c4873d3b3e461.zip
changed repository layout
Diffstat (limited to 'media.erl')
-rw-r--r--media.erl46
1 files changed, 0 insertions, 46 deletions
diff --git a/media.erl b/media.erl
deleted file mode 100644
index a761f64..0000000
--- a/media.erl
+++ /dev/null
@@ -1,46 +0,0 @@
--module(media).
--export([init/0,insert/3, ask/2]).
-
-% Since we are not willing to calculate and deliver all the id3 tags everytime they are requested,
-% we try to get something persistent with mnesia.
-% Concerning the parsing of id3tags we use the library id3v2 by Brendon Hogger. For detailed information take a
-% look at the header of the library.
-
-% What is an entry in our database made of? By the way the filepath includes the filename.
-
--record(track, {artist, title, votes, locked, filepath }).
-
-% With which application do we play mp3s?
-
-player(path) ->
- {ok, ["/usr/bin/env", "mplayer", "-quiet", path]}.
-
-% Before this module becomes usable, we must initialize it with the following steps:
-% 1. Initialize the mnesiadatabase and create the table within it.
-% 2. Parse the mp3s in the working directory and add them to the database
-% 3. Get into a loop so the database can be actually queried and files can be played.
-
-init() ->
- mnesia:create_schema([node()]),
- mnesia:start(),
- mnesia:create_table(track, [{attributes, record_info(fields, track)}]),
- io:format("Initialisation of mnesia successful.\n").
-
-% Basic insertion of entrys into the database. Some entries are left out because they are 0 or false.
-
-insert(Artist, Title, Filepath) ->
- F = fun() ->
- mnesia:write(#track{artist = Artist, title = Title, votes = 0, locked = false, filepath = Filepath})
- end,
- mnesia:transaction(F).
-
-% We want to query in order to simplify the next calls.
-ask(Artist, Title) ->
- F = fun() ->
- mnesia:match_object({track, Artist, Title, '_', '_', '_'})
- end,
- {atomic, Results} = mnesia:transaction(F),
- Results.
-
-% We want to play mp3s from our database.
-play(Artist, Title) -> io:format("blub").