1
0
Fork 0
mirror of https://github.com/geometer/FBReaderJ.git synced 2025-10-06 03:50:19 +02:00

mimeType(ZLFile) implementation; extension() method has been removed

This commit is contained in:
Nikolay Pultsin 2012-04-07 21:05:09 +01:00
parent cc484121ce
commit 13daebdc85
8 changed files with 51 additions and 3 deletions

View file

@ -33,7 +33,7 @@ public abstract class FileType {
public abstract boolean acceptsFile(ZLFile file);
public abstract String extension();
//public abstract String extension();
public abstract List<MimeType> mimeTypes();
public abstract MimeType mimeType(ZLFile file);
}

View file

@ -35,13 +35,20 @@ class FileTypeDjVu extends FileType {
return "djvu".equalsIgnoreCase(extension) || "djv".equalsIgnoreCase(extension);
}
/*
@Override
public String extension() {
return "djvu";
}
*/
@Override
public List<MimeType> mimeTypes() {
return MimeType.TYPES_DJVU;
}
@Override
public MimeType mimeType(ZLFile file) {
return acceptsFile(file) ? MimeType.IMAGE_VND_DJVU : MimeType.NULL;
}
}

View file

@ -38,13 +38,25 @@ class FileTypeEpub extends FileType {
"opf".equalsIgnoreCase(extension);
}
/*
@Override
public String extension() {
return "epub";
}
*/
@Override
public List<MimeType> mimeTypes() {
return MimeType.TYPES_EPUB;
}
@Override
public MimeType mimeType(ZLFile file) {
final String extension = file.getExtension();
if ("epub".equalsIgnoreCase(extension)) {
return MimeType.APP_EPUB_ZIP;
}
// TODO: process other extensions (?)
return MimeType.NULL;
}
}

View file

@ -31,17 +31,23 @@ class FileTypeFB2Zip extends FileType {
@Override
public boolean acceptsFile(ZLFile file) {
// TODO: implement
return false;
return file.getShortName().toLowerCase().endsWith(".fb2.zip");
}
/*
@Override
public String extension() {
return "fb2.zip";
}
*/
@Override
public List<MimeType> mimeTypes() {
return MimeType.TYPES_FB2_ZIP;
}
@Override
public MimeType mimeType(ZLFile file) {
return acceptsFile(file) ? MimeType.APP_FB2_ZIP : MimeType.NULL;
}
}

View file

@ -35,13 +35,20 @@ class FileTypeHtml extends FileType {
return extension.endsWith("html") || "htm".equals(extension);
}
/*
@Override
public String extension() {
return "html";
}
*/
@Override
public List<MimeType> mimeTypes() {
return MimeType.TYPES_HTML;
}
@Override
public MimeType mimeType(ZLFile file) {
return acceptsFile(file) ? MimeType.TEXT_HTML : MimeType.NULL;
}
}

View file

@ -34,13 +34,20 @@ class FileTypeMobipocket extends FileTypePalm {
return "mobi".equalsIgnoreCase(file.getExtension()) || super.acceptsFile(file);
}
/*
@Override
public String extension() {
return "mobi";
}
*/
@Override
public List<MimeType> mimeTypes() {
return MimeType.TYPES_MOBIPOCKET;
}
@Override
public MimeType mimeType(ZLFile file) {
return acceptsFile(file) ? MimeType.APP_MOBI : MimeType.NULL;
}
}

View file

@ -62,8 +62,10 @@ abstract class FileTypePalm extends FileType {
myPalmId.equals(palmFileType(file));
}
/*
@Override
public String extension() {
return "pdb";
}
*/
}

View file

@ -39,13 +39,20 @@ class SimpleFileType extends FileType {
return myExtension.equalsIgnoreCase(file.getExtension());
}
/*
@Override
public String extension() {
return myExtension;
}
*/
@Override
public List<MimeType> mimeTypes() {
return myMimeTypes;
}
@Override
public MimeType mimeType(ZLFile file) {
return acceptsFile(file) ? myMimeTypes.get(0) : MimeType.NULL;
}
}