Issue 109: Analytics: Update API -getNemaFileTypesMetadata
Project Member Reported by kumarami...@gmail.com, May 2, 2010
I need a function that returns valid NemaFileType classes and metadata.
Just the names of the classes along with the some name/description

Something along the lines

Map<String,FileMetadata> getNemaFileTypesMetadata();


Where key of the map is the name of the class such as a.b.c.MelodyTextFile,
and FileMetadata is some information about the File Format, with at-least
name and description.


This method would be used by the DIY webapplication to display the name and
description and valid file types in a drop down for the user to select.


I would not like to drag the whole analytics api into the DIY webapp, so we
need to do a few things:


1. Move the code that does registration of the data types/file types to a
different maven sub project and have it not dependent on any other project.
2. Expose the getNemaFileTypesMetadata() method to the DIY.
3. Let analytics depend upon this new module.


I might do some of this before you return.

Amit



May 2, 2010
Project Member #1 kumarami...@gmail.com
I could locate the following files/data formats

org.imirsel.nema.analytics.evaluation.chord.ChordIntervalTextFile
org.imirsel.nema.analytics.evaluation.chord.ChordShortHandTextFile
org.imirsel.nema.analytics.evaluation.chord.ChordNumberTextFile
org.imirsel.nema.analytics.evaluation.classifiction.ClassificationTextFile
org.imirsel.nema.analytics.evaluation.melody.MelodyTextFile
org.imirsel.nema.analytics.evaluation.key.KeyTextFile
org.imirsel.nema.analytics.evaluation.onset.OnsetTextFile
org.imirsel.nema.analytics.evaluation.tempo.TempoTextFile
org.imirsel.nema.analytics.io.OpaqueFileFormat
org.imirsel.nema.analytics.util.io.RawAudioFile

Are there ones that I have missed?


For now I am going to create a service class in DIY and hard code these values. We
can work on integrating this at the registration layer in analytics. The solution
above is not ideal because this would change each time you add a new file format, and
we would have to modify at two places DIY and analytics, ideally this should be
tightly integrated with the analytics -client or api layer.

Amit

May 4, 2010
Project Member #2 kris.west@gmail.com
Yes those are all the file formats that I know of. 

I looked at ways of auto-discovering the file type implementations, however this always 
involves some nasty amount of class loading...