Skip to content

Commit 88a0d4e

Browse files
committed
make it harder to modify metadata in maps
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1921337 13f79535-47bb-0310-9956-ffa450edef68
1 parent ab68210 commit 88a0d4e

File tree

2 files changed

+45
-40
lines changed

2 files changed

+45
-40
lines changed

poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFDataValidation.java

Lines changed: 44 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ Licensed to the Apache Software Foundation (ASF) under one or more
1616
==================================================================== */
1717
package org.apache.poi.xssf.usermodel;
1818

19+
import java.util.Collections;
1920
import java.util.HashMap;
2021
import java.util.Map;
2122

@@ -34,49 +35,53 @@ Licensed to the Apache Software Foundation (ASF) under one or more
3435
public class XSSFDataValidation implements DataValidation {
3536
private static final int MAX_TEXT_LENGTH = 255;
3637

37-
private CTDataValidation ctDataValidation;
38-
private XSSFDataValidationConstraint validationConstraint;
39-
private CellRangeAddressList regions;
38+
private final CTDataValidation ctDataValidation;
39+
private final XSSFDataValidationConstraint validationConstraint;
40+
private final CellRangeAddressList regions;
4041

41-
static Map<Integer, STDataValidationOperator.Enum> operatorTypeMappings = new HashMap<>();
42-
static Map<STDataValidationOperator.Enum, Integer> operatorTypeReverseMappings = new HashMap<>();
43-
static Map<Integer, STDataValidationType.Enum> validationTypeMappings = new HashMap<>();
44-
static Map<STDataValidationType.Enum, Integer> validationTypeReverseMappings = new HashMap<>();
45-
static Map<Integer, STDataValidationErrorStyle.Enum> errorStyleMappings = new HashMap<>();
46-
static Map<STDataValidationErrorStyle.Enum, Integer> reverseErrorStyleMappings;
42+
static final Map<Integer, STDataValidationOperator.Enum> operatorTypeMappings;
43+
static final Map<STDataValidationOperator.Enum, Integer> operatorTypeReverseMappings;
44+
static final Map<Integer, STDataValidationType.Enum> validationTypeMappings;
45+
static final Map<STDataValidationType.Enum, Integer> validationTypeReverseMappings;
46+
static final Map<Integer, STDataValidationErrorStyle.Enum> errorStyleMappings;
47+
static final Map<STDataValidationErrorStyle.Enum, Integer> reverseErrorStyleMappings;
4748

4849
static {
49-
errorStyleMappings.put(DataValidation.ErrorStyle.INFO, STDataValidationErrorStyle.INFORMATION);
50-
errorStyleMappings.put(DataValidation.ErrorStyle.STOP, STDataValidationErrorStyle.STOP);
51-
errorStyleMappings.put(DataValidation.ErrorStyle.WARNING, STDataValidationErrorStyle.WARNING);
52-
53-
reverseErrorStyleMappings = MapUtils.invertMap(errorStyleMappings);
54-
55-
operatorTypeMappings.put(DataValidationConstraint.OperatorType.BETWEEN,STDataValidationOperator.BETWEEN);
56-
operatorTypeMappings.put(DataValidationConstraint.OperatorType.NOT_BETWEEN,STDataValidationOperator.NOT_BETWEEN);
57-
operatorTypeMappings.put(DataValidationConstraint.OperatorType.EQUAL,STDataValidationOperator.EQUAL);
58-
operatorTypeMappings.put(DataValidationConstraint.OperatorType.NOT_EQUAL,STDataValidationOperator.NOT_EQUAL);
59-
operatorTypeMappings.put(DataValidationConstraint.OperatorType.GREATER_THAN,STDataValidationOperator.GREATER_THAN);
60-
operatorTypeMappings.put(DataValidationConstraint.OperatorType.GREATER_OR_EQUAL,STDataValidationOperator.GREATER_THAN_OR_EQUAL);
61-
operatorTypeMappings.put(DataValidationConstraint.OperatorType.LESS_THAN,STDataValidationOperator.LESS_THAN);
62-
operatorTypeMappings.put(DataValidationConstraint.OperatorType.LESS_OR_EQUAL,STDataValidationOperator.LESS_THAN_OR_EQUAL);
63-
64-
for( Map.Entry<Integer,STDataValidationOperator.Enum> entry : operatorTypeMappings.entrySet() ) {
65-
operatorTypeReverseMappings.put(entry.getValue(),entry.getKey());
66-
}
6750

68-
validationTypeMappings.put(DataValidationConstraint.ValidationType.FORMULA,STDataValidationType.CUSTOM);
69-
validationTypeMappings.put(DataValidationConstraint.ValidationType.DATE,STDataValidationType.DATE);
70-
validationTypeMappings.put(DataValidationConstraint.ValidationType.DECIMAL,STDataValidationType.DECIMAL);
71-
validationTypeMappings.put(DataValidationConstraint.ValidationType.LIST,STDataValidationType.LIST);
72-
validationTypeMappings.put(DataValidationConstraint.ValidationType.ANY,STDataValidationType.NONE);
73-
validationTypeMappings.put(DataValidationConstraint.ValidationType.TEXT_LENGTH,STDataValidationType.TEXT_LENGTH);
74-
validationTypeMappings.put(DataValidationConstraint.ValidationType.TIME,STDataValidationType.TIME);
75-
validationTypeMappings.put(DataValidationConstraint.ValidationType.INTEGER,STDataValidationType.WHOLE);
76-
77-
for( Map.Entry<Integer,STDataValidationType.Enum> entry : validationTypeMappings.entrySet() ) {
78-
validationTypeReverseMappings.put(entry.getValue(),entry.getKey());
79-
}
51+
final HashMap<Integer, STDataValidationErrorStyle.Enum> esMappings = new HashMap<>();
52+
esMappings.put(DataValidation.ErrorStyle.INFO, STDataValidationErrorStyle.INFORMATION);
53+
esMappings.put(DataValidation.ErrorStyle.STOP, STDataValidationErrorStyle.STOP);
54+
esMappings.put(DataValidation.ErrorStyle.WARNING, STDataValidationErrorStyle.WARNING);
55+
errorStyleMappings = Collections.unmodifiableMap(esMappings);
56+
57+
reverseErrorStyleMappings = Collections.unmodifiableMap(MapUtils.invertMap(esMappings));
58+
59+
final Map<Integer, STDataValidationOperator.Enum> otMappings = new HashMap<>();
60+
otMappings.put(DataValidationConstraint.OperatorType.BETWEEN,STDataValidationOperator.BETWEEN);
61+
otMappings.put(DataValidationConstraint.OperatorType.NOT_BETWEEN,STDataValidationOperator.NOT_BETWEEN);
62+
otMappings.put(DataValidationConstraint.OperatorType.EQUAL,STDataValidationOperator.EQUAL);
63+
otMappings.put(DataValidationConstraint.OperatorType.NOT_EQUAL,STDataValidationOperator.NOT_EQUAL);
64+
otMappings.put(DataValidationConstraint.OperatorType.GREATER_THAN,STDataValidationOperator.GREATER_THAN);
65+
otMappings.put(DataValidationConstraint.OperatorType.GREATER_OR_EQUAL,STDataValidationOperator.GREATER_THAN_OR_EQUAL);
66+
otMappings.put(DataValidationConstraint.OperatorType.LESS_THAN,STDataValidationOperator.LESS_THAN);
67+
otMappings.put(DataValidationConstraint.OperatorType.LESS_OR_EQUAL,STDataValidationOperator.LESS_THAN_OR_EQUAL);
68+
operatorTypeMappings = Collections.unmodifiableMap(otMappings);
69+
70+
operatorTypeReverseMappings = Collections.unmodifiableMap(MapUtils.invertMap(otMappings));
71+
72+
final Map<Integer, STDataValidationType.Enum> vtMappings = new HashMap<>();
73+
vtMappings.put(DataValidationConstraint.ValidationType.FORMULA,STDataValidationType.CUSTOM);
74+
vtMappings.put(DataValidationConstraint.ValidationType.DATE,STDataValidationType.DATE);
75+
vtMappings.put(DataValidationConstraint.ValidationType.DECIMAL,STDataValidationType.DECIMAL);
76+
vtMappings.put(DataValidationConstraint.ValidationType.LIST,STDataValidationType.LIST);
77+
vtMappings.put(DataValidationConstraint.ValidationType.ANY,STDataValidationType.NONE);
78+
vtMappings.put(DataValidationConstraint.ValidationType.TEXT_LENGTH,STDataValidationType.TEXT_LENGTH);
79+
vtMappings.put(DataValidationConstraint.ValidationType.TIME,STDataValidationType.TIME);
80+
vtMappings.put(DataValidationConstraint.ValidationType.INTEGER,STDataValidationType.WHOLE);
81+
validationTypeMappings = Collections.unmodifiableMap(vtMappings);
82+
83+
validationTypeReverseMappings = Collections.unmodifiableMap(MapUtils.invertMap(validationTypeMappings));
84+
8085
}
8186

8287
XSSFDataValidation(CellRangeAddressList regions,CTDataValidation ctDataValidation) {

poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/VerticalAlign.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ public enum VerticalAlign {
4545
*/
4646
SUBSCRIPT(3);
4747

48-
private static Map<Integer, VerticalAlign> imap = new HashMap<>();
48+
private static final Map<Integer, VerticalAlign> imap = new HashMap<>();
4949

5050
static {
5151
for (VerticalAlign p : values()) {

0 commit comments

Comments
 (0)