Skip to content

Commit f402791

Browse files
committed
fix bug in DefaultEbicsRootElement
- suggestedPrefixes should not be static - it will reset everytime a new DefaultEbicsRootElement object is created
1 parent 1bb8587 commit f402791

File tree

1 file changed

+14
-15
lines changed

1 file changed

+14
-15
lines changed

src/main/java/org/kopi/ebics/xml/DefaultEbicsRootElement.java

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ public abstract class DefaultEbicsRootElement implements EbicsRootElement {
5050
*/
5151
public DefaultEbicsRootElement(EbicsSession session) {
5252
this.session = session;
53-
suggestedPrefixes = new HashMap<String, String>();
53+
suggestedPrefixes = new HashMap<>();
5454
}
5555

5656
/**
@@ -65,7 +65,7 @@ public DefaultEbicsRootElement() {
6565
* @param uri the namespace URI
6666
* @param prefix the namespace URI prefix
6767
*/
68-
protected static void setSaveSuggestedPrefixes(String uri, String prefix) {
68+
protected void setSaveSuggestedPrefixes(String uri, String prefix) {
6969
suggestedPrefixes.put(uri, prefix);
7070
}
7171

@@ -96,18 +96,17 @@ public void insertSchemaLocation(String namespaceURI,
9696
String prefix,
9797
String value)
9898
{
99-
XmlCursor cursor;
10099

101-
cursor = document.newCursor();
102-
while (cursor.hasNextToken()) {
103-
if (cursor.isStart()) {
104-
cursor.toNextToken();
105-
cursor.insertAttributeWithValue(new QName(namespaceURI, localPart, prefix), value);
106-
break;
107-
} else {
108-
cursor.toNextToken();
100+
XmlCursor cursor = document.newCursor();
101+
while (cursor.hasNextToken()) {
102+
if (cursor.isStart()) {
103+
cursor.toNextToken();
104+
cursor.insertAttributeWithValue(new QName(namespaceURI, localPart, prefix), value);
105+
break;
106+
} else {
107+
cursor.toNextToken();
108+
}
109109
}
110-
}
111110
}
112111

113112
/**
@@ -161,14 +160,14 @@ public void addNamespaceDecl(String prefix, String uri) {
161160

162161
@Override
163162
public void validate() throws EbicsException {
164-
ArrayList<XmlError> validationMessages = new ArrayList<XmlError>();
163+
ArrayList<XmlError> validationMessages = new ArrayList<>();
165164
boolean isValid = document.validate(new XmlOptions().setErrorListener(validationMessages));
166165

167166
if (!isValid) {
168167
Iterator<XmlError> iter = validationMessages.iterator();
169168
StringBuilder message = new StringBuilder();
170169
while (iter.hasNext()) {
171-
if (!message.toString().equals("")) {
170+
if (!message.toString().isEmpty()) {
172171
message.append(";");
173172
}
174173
message.append(iter.next().getMessage());
@@ -203,6 +202,6 @@ public void print(PrintStream stream) {
203202

204203
protected XmlObject document;
205204
protected EbicsSession session;
206-
private static Map<String, String> suggestedPrefixes;
205+
private final Map<String, String> suggestedPrefixes;
207206
private static final long serialVersionUID = -3928957097145095177L;
208207
}

0 commit comments

Comments
 (0)