1 package com.github.mygreen.supercsv.exception;
2
3 import java.util.HashMap;
4 import java.util.Map;
5
6 import org.supercsv.exception.SuperCsvException;
7 import org.supercsv.util.CsvContext;
8
9
10
11
12
13
14
15
16 public class SuperCsvFixedSizeException extends SuperCsvException {
17
18
19
20
21 private String messageCode;
22
23
24
25
26 private Map<String, Object> messageVariables = new HashMap<>();
27
28 private SuperCsvFixedSizeException(final String msg, final CsvContext context) {
29 super(msg, context);
30 }
31
32
33
34
35
36 public String getMessageCode() {
37 return messageCode;
38 }
39
40
41
42
43
44 public Map<String, Object> getMessageVariables() {
45 return messageVariables;
46 }
47
48
49
50
51
52
53 public static class Builder {
54
55 private final String messageCode;
56
57 private final CsvContext context;
58
59
60 private String message;
61
62 private Map<String, Object> messageVariables = new HashMap<>();
63
64
65
66
67
68
69 public Builder(String messageCode, CsvContext context) {
70 this.messageCode = messageCode;
71 this.context = context;
72 }
73
74
75
76
77
78
79 public Builder message(String message) {
80 this.message = message;
81 return this;
82 }
83
84
85
86
87
88
89
90
91
92 public Builder messageFormat(final String format, final Object... args) {
93 return message(String.format(format, args));
94 }
95
96
97
98
99
100
101
102 public Builder messageVariables(String key, Object value) {
103 this.messageVariables.put(key, value);
104 return this;
105 }
106
107
108
109
110
111
112 public Builder messageVariables(Map<String, Object> arguments) {
113 this.messageVariables.putAll(arguments);
114 return this;
115 }
116
117
118
119
120 public SuperCsvFixedSizeException build() {
121 SuperCsvFixedSizeExceptionxedSizeException.html#SuperCsvFixedSizeException">SuperCsvFixedSizeException exception = new SuperCsvFixedSizeException(message != null ? message : "", context);
122 exception.messageCode = messageCode;
123 exception.messageVariables.putAll(messageVariables);
124 return exception;
125 }
126
127 }
128
129 }