mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-24 17:32:48 +00:00
More fine-grained access to mimetype config XML. Added more mimetypes to OpenOffice handlers
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@2225 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -73,10 +73,18 @@ public class MimetypeMap implements MimetypeService
|
||||
public static final String MIMETYPE_OPENDOCUMENT_TEXT_WEB= "application/vnd.oasis.opendocument.text-web";
|
||||
public static final String MIMETYPE_OPENDOCUMENT_DATABASE= "application/vnd.oasis.opendocument.database";
|
||||
// Open Office
|
||||
public static final String MIMETYPE_OPENOFFICE_WRITER = "application/vnd.sun.xml.writer";
|
||||
public static final String MIMETYPE_OPENOFFICE_CALC = "application/vnd.sun.xml.calc";
|
||||
public static final String MIMETYPE_OPENOFFICE1_WRITER = "application/vnd.sun.xml.writer";
|
||||
public static final String MIMETYPE_OPENOFFICE1_CALC = "application/vnd.sun.xml.calc";
|
||||
public static final String MIMETYPE_OPENOFFICE1_DRAW = "application/vnd.sun.xml.draw";
|
||||
// Star Office
|
||||
public static final String MIMETYPE_STAROFFICE5_SPREADSHEET = "application/vnd.stardivision.calc";
|
||||
public static final String MIMETYPE_STAROFFICE5_DRAW = "application/vnd.stardivision.draw";
|
||||
public static final String MIMETYPE_STAROFFICE5_CALC = "application/vnd.stardivision.calc";
|
||||
public static final String MIMETYPE_STAROFFICE5_IMPRESS = "application/vnd.stardivision.impress";
|
||||
public static final String MIMETYPE_STAROFFICE5_IMPRESS_PACKED = "application/vnd.stardivision.impress-packed";
|
||||
public static final String MIMETYPE_STAROFFICE5_CHART = "application/vnd.stardivision.chart";
|
||||
public static final String MIMETYPE_STAROFFICE5_WRITER = "application/vnd.stardivision.writer";
|
||||
public static final String MIMETYPE_STAROFFICE5_WRITER_GLOBAL = "application/vnd.stardivision.writer-global";
|
||||
public static final String MIMETYPE_STAROFFICE5_MATH = "application/vnd.stardivision.math";
|
||||
// Audio
|
||||
public static final String MIMETYPE_MP3 = "audio/x-mpeg";
|
||||
// Alfresco
|
||||
|
@@ -54,5 +54,8 @@ public class MimetypeMapTest extends BaseSpringTest
|
||||
// MS Word
|
||||
assertEquals("doc", extensionsByMimetype.get("application/msword"));
|
||||
assertEquals("application/msword", mimetypesByExtension.get("doc"));
|
||||
|
||||
// Star Office
|
||||
assertEquals("sds", extensionsByMimetype.get("application/vnd.stardivision.chart"));
|
||||
}
|
||||
}
|
||||
|
@@ -54,7 +54,7 @@ public class UnoMetadataExtracter extends AbstractMetadataExtracter
|
||||
|
||||
private static String[] mimeTypes = new String[] {
|
||||
MimetypeMap.MIMETYPE_OPENDOCUMENT_TEXT,
|
||||
MimetypeMap.MIMETYPE_OPENOFFICE_WRITER,
|
||||
MimetypeMap.MIMETYPE_OPENOFFICE1_WRITER,
|
||||
// Add the other OpenOffice.org stuff here
|
||||
// In fact, other types may apply as well, but should be counted as lower
|
||||
// quality since they involve conversion.
|
||||
|
@@ -53,7 +53,7 @@ public class UnoMetadataExtracterTest extends AbstractMetadataExtracterTest
|
||||
reliability = extracter.getReliability(MimetypeMap.MIMETYPE_OPENDOCUMENT_TEXT);
|
||||
assertEquals("OpenOffice 2.0 Writer (OpenDoc) should be supported", 1.0, reliability);
|
||||
|
||||
reliability = extracter.getReliability(MimetypeMap.MIMETYPE_OPENOFFICE_WRITER);
|
||||
reliability = extracter.getReliability(MimetypeMap.MIMETYPE_OPENOFFICE1_WRITER);
|
||||
assertEquals("OpenOffice 1.0 Writer should be supported", 1.0, reliability);
|
||||
}
|
||||
|
||||
@@ -74,6 +74,6 @@ public class UnoMetadataExtracterTest extends AbstractMetadataExtracterTest
|
||||
return;
|
||||
}
|
||||
|
||||
testCommonMetadata(extractFromExtension("sxw", MimetypeMap.MIMETYPE_OPENOFFICE_WRITER));
|
||||
testCommonMetadata(extractFromExtension("sxw", MimetypeMap.MIMETYPE_OPENOFFICE1_WRITER));
|
||||
}
|
||||
}
|
||||
|
@@ -53,9 +53,7 @@ public class UnoContentTransformer extends AbstractContentTransformer
|
||||
// Build the map of known Uno document formats and store by conversion key
|
||||
formatsByConversion = new HashMap<ContentTransformerRegistry.TransformationKey, DocumentFormatWrapper>(17);
|
||||
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_OPENDOCUMENT_SPREADSHEET, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_CALC, 1.0));
|
||||
// Open Office 2.0 / Open Document
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_OPENDOCUMENT_TEXT, MimetypeMap.MIMETYPE_TEXT_PLAIN),
|
||||
new DocumentFormatWrapper(DocumentFormat.TEXT, 1.0));
|
||||
@@ -63,26 +61,47 @@ public class UnoContentTransformer extends AbstractContentTransformer
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_OPENDOCUMENT_TEXT, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_WRITER, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_OPENOFFICE_WRITER, MimetypeMap.MIMETYPE_TEXT_PLAIN),
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_OPENDOCUMENT_SPREADSHEET, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_CALC, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_OPENDOCUMENT_PRESENTATION, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_WRITER, 1.0));
|
||||
// Open Office
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_OPENOFFICE1_WRITER, MimetypeMap.MIMETYPE_TEXT_PLAIN),
|
||||
new DocumentFormatWrapper(DocumentFormat.TEXT, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_OPENOFFICE_WRITER, MimetypeMap.MIMETYPE_PDF),
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_OPENOFFICE1_WRITER, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_WRITER, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_OPENOFFICE_CALC, MimetypeMap.MIMETYPE_PDF),
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_OPENOFFICE1_CALC, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_WRITER, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_STAROFFICE5_SPREADSHEET, MimetypeMap.MIMETYPE_PDF),
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_OPENOFFICE1_DRAW, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_IMPRESS, 1.0));
|
||||
// Star Office 5.x
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_STAROFFICE5_DRAW, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_IMPRESS, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_STAROFFICE5_CALC, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_CALC, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_STAROFFICE5_CHART, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_WRITER, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_TEXT_PLAIN, MimetypeMap.MIMETYPE_HTML),
|
||||
new DocumentFormatWrapper(DocumentFormat.HTML_WRITER, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_TEXT_PLAIN, MimetypeMap.MIMETYPE_PDF),
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_STAROFFICE5_IMPRESS, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_WRITER, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_TEXT_PLAIN, MimetypeMap.MIMETYPE_WORD),
|
||||
new DocumentFormatWrapper(DocumentFormat.TEXT, 1.0));
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_STAROFFICE5_IMPRESS_PACKED, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_IMPRESS, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_STAROFFICE5_WRITER, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_WRITER, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_STAROFFICE5_WRITER_GLOBAL, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_WRITER, 1.0));
|
||||
// MS Office
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_WORD, MimetypeMap.MIMETYPE_TEXT_PLAIN),
|
||||
new DocumentFormatWrapper(DocumentFormat.TEXT, 1.0));
|
||||
@@ -92,15 +111,25 @@ public class UnoContentTransformer extends AbstractContentTransformer
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_EXCEL, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_CALC, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_WORD, MimetypeMap.MIMETYPE_HTML),
|
||||
new DocumentFormatWrapper(DocumentFormat.HTML_WRITER, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_PPT, MimetypeMap.MIMETYPE_FLASH),
|
||||
new DocumentFormatWrapper(DocumentFormat.FLASH_IMPRESS, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_PPT, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_IMPRESS, 1.0));
|
||||
// Other
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_WORD, MimetypeMap.MIMETYPE_HTML),
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_TEXT_PLAIN, MimetypeMap.MIMETYPE_HTML),
|
||||
new DocumentFormatWrapper(DocumentFormat.HTML_WRITER, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_TEXT_PLAIN, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_WRITER, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_TEXT_PLAIN, MimetypeMap.MIMETYPE_WORD),
|
||||
new DocumentFormatWrapper(DocumentFormat.TEXT, 1.0));
|
||||
formatsByConversion.put(
|
||||
new ContentTransformerRegistry.TransformationKey(MimetypeMap.MIMETYPE_HTML, MimetypeMap.MIMETYPE_PDF),
|
||||
new DocumentFormatWrapper(DocumentFormat.PDF_WRITER_WEB, 1.0));
|
||||
|
BIN
source/test-resources/quick/quick.odf
Normal file
BIN
source/test-resources/quick/quick.odf
Normal file
Binary file not shown.
BIN
source/test-resources/quick/quick.odg
Normal file
BIN
source/test-resources/quick/quick.odg
Normal file
Binary file not shown.
BIN
source/test-resources/quick/quick.odp
Normal file
BIN
source/test-resources/quick/quick.odp
Normal file
Binary file not shown.
Binary file not shown.
BIN
source/test-resources/quick/quick.sda
Normal file
BIN
source/test-resources/quick/quick.sda
Normal file
Binary file not shown.
Binary file not shown.
BIN
source/test-resources/quick/quick.sdd
Normal file
BIN
source/test-resources/quick/quick.sdd
Normal file
Binary file not shown.
BIN
source/test-resources/quick/quick.sdw
Normal file
BIN
source/test-resources/quick/quick.sdw
Normal file
Binary file not shown.
BIN
source/test-resources/quick/quick.smf
Normal file
BIN
source/test-resources/quick/quick.smf
Normal file
Binary file not shown.
Binary file not shown.
BIN
source/test-resources/quick/quick.sxd
Normal file
BIN
source/test-resources/quick/quick.sxd
Normal file
Binary file not shown.
BIN
source/test-resources/quick/quick.sxi
Normal file
BIN
source/test-resources/quick/quick.sxi
Normal file
Binary file not shown.
BIN
source/test-resources/quick/quick.sxm
Normal file
BIN
source/test-resources/quick/quick.sxm
Normal file
Binary file not shown.
Reference in New Issue
Block a user