org.apache.poi.hpsf.ClassIDPredefined Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of apache-poi Show documentation
Show all versions of apache-poi Show documentation
The Apache Commons Codec package contains simple encoder and decoders for
various formats such as Base64 and Hexadecimal. In addition to these
widely used encoders and decoders, the codec package also maintains a
collection of phonetic encoding utilities.
/* ====================================================================
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
==================================================================== */
package org.apache.poi.hpsf;
import java.util.HashMap;
import java.util.Map;
@SuppressWarnings("java:S1192")
public enum ClassIDPredefined {
/** OLE 1.0 package manager */
OLE_V1_PACKAGE ("{0003000C-0000-0000-C000-000000000046}", ".bin", null),
/** Excel V3 - document */
EXCEL_V3 ("{00030000-0000-0000-C000-000000000046}", ".xls", "application/vnd.ms-excel"),
/** Excel V3 - chart */
EXCEL_V3_CHART ("{00030001-0000-0000-C000-000000000046}", null, null),
/** Excel V3 - macro */
EXCEL_V3_MACRO ("{00030002-0000-0000-C000-000000000046}", null, null),
/** Excel V7 / 95 - document */
EXCEL_V7 ("{00020810-0000-0000-C000-000000000046}", ".xls", "application/vnd.ms-excel"),
/** Excel V7 / 95 - workbook */
EXCEL_V7_WORKBOOK ("{00020841-0000-0000-C000-000000000046}", null, null),
/** Excel V7 / 95 - chart */
EXCEL_V7_CHART ("{00020811-0000-0000-C000-000000000046}", null, null),
/** Excel V8 / 97 - document */
EXCEL_V8 ("{00020820-0000-0000-C000-000000000046}", ".xls", "application/vnd.ms-excel"),
/** Excel V8 / 97 - chart */
EXCEL_V8_CHART ("{00020821-0000-0000-C000-000000000046}", null, null),
/** Excel V11 / 2003 - document */
EXCEL_V11 ("{00020812-0000-0000-C000-000000000046}", ".xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"),
/** Excel V12 / 2007 - document */
EXCEL_V12 ("{00020830-0000-0000-C000-000000000046}", ".xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"),
/** Excel V12 / 2007 - macro */
EXCEL_V12_MACRO ("{00020832-0000-0000-C000-000000000046}", ".xlsm", "application/vnd.ms-excel.sheet.macroEnabled.12"),
/** Excel V12 / 2007 - xlsb document */
EXCEL_V12_XLSB ("{00020833-0000-0000-C000-000000000046}", ".xlsb", "application/vnd.ms-excel.sheet.binary.macroEnabled.12"),
/* Excel V14 / 2010 - document */
EXCEL_V14 ("{00024500-0000-0000-C000-000000000046}", ".xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"),
/* Excel V14 / 2010 - workbook */
EXCEL_V14_WORKBOOK ("{000208D5-0000-0000-C000-000000000046}", null, null),
/* Excel V14 / 2010 - chart */
EXCEL_V14_CHART ("{00024505-0014-0000-C000-000000000046}", null, null),
/** Excel V14 / 2010 - OpenDocument spreadsheet */
EXCEL_V14_ODS ("{EABCECDB-CC1C-4A6F-B4E3-7F888A5ADFC8}", ".ods", "application/vnd.oasis.opendocument.spreadsheet"),
/** Word V7 / 95 - document */
WORD_V7 ("{00020900-0000-0000-C000-000000000046}", ".doc", "application/msword"),
/** Word V8 / 97 - document */
WORD_V8 ("{00020906-0000-0000-C000-000000000046}", ".doc", "application/msword"),
/** Word V12 / 2007 - document */
WORD_V12 ("{F4754C9B-64F5-4B40-8AF4-679732AC0607}", ".docx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document"),
/** Word V12 / 2007 - macro */
WORD_V12_MACRO ("{18A06B6B-2F3F-4E2B-A611-52BE631B2D22}", ".docm", "application/vnd.ms-word.document.macroEnabled.12"),
/** Powerpoint V7 / 95 - document */
POWERPOINT_V7 ("{EA7BAE70-FB3B-11CD-A903-00AA00510EA3}", ".ppt", "application/vnd.ms-powerpoint"),
/** Powerpoint V7 / 95 - slide */
POWERPOINT_V7_SLIDE ("{EA7BAE71-FB3B-11CD-A903-00AA00510EA3}", null, null),
/** Powerpoint V8 / 97 - document */
POWERPOINT_V8 ("{64818D10-4F9B-11CF-86EA-00AA00B929E8}", ".ppt", "application/vnd.ms-powerpoint"),
/** Powerpoint V8 / 97 - template */
POWERPOINT_V8_TPL ("{64818D11-4F9B-11CF-86EA-00AA00B929E8}", ".pot", "application/vnd.ms-powerpoint"),
/** Powerpoint V12 / 2007 - document */
POWERPOINT_V12 ("{CF4F55F4-8F87-4D47-80BB-5808164BB3F8}", ".pptx", "application/vnd.openxmlformats-officedocument.presentationml.presentation"),
/** Powerpoint V12 / 2007 - macro */
POWERPOINT_V12_MACRO ("{DC020317-E6E2-4A62-B9FA-B3EFE16626F4}", ".pptm", "application/vnd.ms-powerpoint.presentation.macroEnabled.12"),
/** Publisher V12 */
PUBLISHER_V12 ("{0002123D-0000-0000-C000-000000000046}", ".pub", "application/x-mspublisher"),
/** Visio 2000 (V6) / 2002 (V10) - drawing */
VISIO_V10 ("{00021A14-0000-0000-C000-000000000046}", ".vsd", "application/vnd.visio"),
/** Equation Editor 3.0 */
EQUATION_V3 ("{0002CE02-0000-0000-C000-000000000046}", null, null),
/** AcroExch.Document */
PDF ("{B801CA65-A1FC-11D0-85AD-444553540000}", ".pdf", "application/pdf"),
/** Plain Text Persistent Handler **/
TXT_ONLY ("{5e941d80-bf96-11cd-b579-08002b30bfeb}", ".txt", "text/plain"),
/** Microsoft Paint **/
PAINT ("{0003000A-0000-0000-C000-000000000046}", null, null),
/** Standard Hyperlink / STD Moniker **/
STD_MONIKER ("{79EAC9D0-BAF9-11CE-8C82-00AA004BA90B}", null, null),
/** URL Moniker **/
URL_MONIKER ("{79EAC9E0-BAF9-11CE-8C82-00AA004BA90B}", null, null),
/** File Moniker **/
FILE_MONIKER ("{00000303-0000-0000-C000-000000000046}", null, null),
/** Document summary information first property section **/
DOC_SUMMARY ("{D5CDD502-2E9C-101B-9397-08002B2CF9AE}", null, null),
/** Document summary information user defined properties section **/
USER_PROPERTIES ("{D5CDD505-2E9C-101B-9397-08002B2CF9AE}", null, null),
/** Summary information property section **/
SUMMARY_PROPERTIES ("{F29F85E0-4FF9-1068-AB91-08002B27B3D9}", null, null);
;
private static final Map LOOKUP = new HashMap<>();
static {
for (ClassIDPredefined p : values()) {
LOOKUP.put(p.externalForm, p);
}
}
private final String externalForm;
private ClassID classId;
private final String fileExtension;
private final String contentType;
ClassIDPredefined(final String externalForm, final String fileExtension, final String contentType) {
this.externalForm = externalForm;
this.fileExtension = fileExtension;
this.contentType = contentType;
}
public ClassID getClassID() {
synchronized (this) {
// TODO: init classId directly in the constructor when old statics have been removed from ClassID
if (classId == null) {
classId = new ClassID(externalForm);
}
}
return classId;
}
public String getFileExtension() {
return fileExtension;
}
public String getContentType() {
return contentType;
}
public static ClassIDPredefined lookup(final String externalForm) {
return LOOKUP.get(externalForm);
}
public static ClassIDPredefined lookup(final ClassID classID) {
return (classID == null) ? null : LOOKUP.get(classID.toString());
}
@SuppressWarnings("java:S1201")
public boolean equals(ClassID classID) {
return getClassID().equals(classID);
}
}