package org.mortbay.ijetty.console;
import java.util.HashMap;
import java.util.Map;
import android.net.Uri;
import android.provider.MediaStore;
public final class MediaType
{
private static Map<String, Uri[]> mediaMap = new HashMap<String,Uri[]>();
public static final String TYPE_VIDEO = "video";
public static final String TYPE_AUDIO = "audio";
public static final String TYPE_IMAGES = "image";
public static final String LOCATION_EXTERNAL = "external";
public static final String LOCATION_INTERNAL = "internal";
static
{
//image
mediaMap.put(TYPE_IMAGES, new Uri[]{MediaStore.Images.Media.EXTERNAL_CONTENT_URI, MediaStore.Images.Media.INTERNAL_CONTENT_URI});
//audio
mediaMap.put(TYPE_AUDIO, new Uri[] {MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, MediaStore.Audio.Media.INTERNAL_CONTENT_URI});
//video
mediaMap.put(TYPE_VIDEO, new Uri[] {MediaStore.Video.Media.EXTERNAL_CONTENT_URI, MediaStore.Video.Media.INTERNAL_CONTENT_URI});
}
public static Uri getContentUriByType(String mediatype, String location)
{
Uri[] uris = mediaMap.get(mediatype);
if (uris == null)
return null;
if (LOCATION_EXTERNAL.equalsIgnoreCase(location.trim()))
return uris[0];
if (LOCATION_INTERNAL.equalsIgnoreCase(location.trim()))
return uris[1];
return null;
}
/**
* Fetch the list of content uris representing the basic media type.
*
* @param mediaType
* the basic media type to fetch
* @return 2 Uri's representing the Content URIs for the [external, internal] content.
*/
public static Uri[] getContentUrisByType(String mediaType)
{
return mediaMap.get(mediaType);
}
}