Skip to content

Commit ae5e608

Browse files
committed
Make Locale optional in SoapBody
This commit flags the Locale as being optional in SoapBody. The current arrangement is a bit special as this requirement has changed between SOAP 1.1 (optional) to SOAP 1.2 (mandatory). Yet, both interfaces extend from the same base interface and the only solution is to flag it optional for the whole hierarchy. Closes gh-1744
1 parent f26bfe5 commit ae5e608

File tree

7 files changed

+36
-31
lines changed

7 files changed

+36
-31
lines changed

spring-ws-core/src/main/java/org/springframework/ws/soap/SoapBody.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ public interface SoapBody extends SoapElement {
6868
* @param locale the language of faultStringOrReason. Optional for SOAP 1.1
6969
* @return the created {@code SoapFault}
7070
*/
71-
SoapFault addMustUnderstandFault(String faultStringOrReason, Locale locale) throws SoapFaultException;
71+
SoapFault addMustUnderstandFault(String faultStringOrReason, @Nullable Locale locale) throws SoapFaultException;
7272

7373
/**
7474
* Adds a {@code Client}/{@code Sender} fault to the body. For SOAP 1.1, this adds a
@@ -80,7 +80,7 @@ public interface SoapBody extends SoapElement {
8080
* @param locale the language of faultStringOrReason. Optional for SOAP 1.1
8181
* @return the created {@code SoapFault}
8282
*/
83-
SoapFault addClientOrSenderFault(String faultStringOrReason, Locale locale) throws SoapFaultException;
83+
SoapFault addClientOrSenderFault(String faultStringOrReason, @Nullable Locale locale) throws SoapFaultException;
8484

8585
/**
8686
* Adds a {@code Server}/{@code Receiver} fault to the body. For SOAP 1.1, this adds a
@@ -92,7 +92,7 @@ public interface SoapBody extends SoapElement {
9292
* @param locale the language of faultStringOrReason. Optional for SOAP 1.1
9393
* @return the created {@code SoapFault}
9494
*/
95-
SoapFault addServerOrReceiverFault(String faultStringOrReason, Locale locale) throws SoapFaultException;
95+
SoapFault addServerOrReceiverFault(String faultStringOrReason, @Nullable Locale locale) throws SoapFaultException;
9696

9797
/**
9898
* Adds a {@code VersionMismatch} fault to the body.
@@ -102,7 +102,7 @@ public interface SoapBody extends SoapElement {
102102
* @param locale the language of faultStringOrReason. Optional for SOAP 1.1
103103
* @return the created {@code SoapFault}
104104
*/
105-
SoapFault addVersionMismatchFault(String faultStringOrReason, Locale locale) throws SoapFaultException;
105+
SoapFault addVersionMismatchFault(String faultStringOrReason, @Nullable Locale locale) throws SoapFaultException;
106106

107107
/**
108108
* Indicates whether this body has a {@code SoapFault}.

spring-ws-core/src/main/java/org/springframework/ws/soap/axiom/AxiomSoap11Body.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,31 +54,31 @@ class AxiomSoap11Body extends AxiomSoapBody implements Soap11Body {
5454
}
5555

5656
@Override
57-
public Soap11Fault addMustUnderstandFault(String faultString, Locale locale) {
57+
public Soap11Fault addMustUnderstandFault(String faultString, @Nullable Locale locale) {
5858
SOAPFault fault = addStandardFault(SOAP11Constants.FAULT_CODE_MUST_UNDERSTAND, faultString, locale);
5959
return new AxiomSoap11Fault(fault, getAxiomFactory());
6060
}
6161

6262
@Override
63-
public Soap11Fault addClientOrSenderFault(String faultString, Locale locale) {
63+
public Soap11Fault addClientOrSenderFault(String faultString, @Nullable Locale locale) {
6464
SOAPFault fault = addStandardFault(SOAP11Constants.FAULT_CODE_SENDER, faultString, locale);
6565
return new AxiomSoap11Fault(fault, getAxiomFactory());
6666
}
6767

6868
@Override
69-
public Soap11Fault addServerOrReceiverFault(String faultString, Locale locale) {
69+
public Soap11Fault addServerOrReceiverFault(String faultString, @Nullable Locale locale) {
7070
SOAPFault fault = addStandardFault(SOAP11Constants.FAULT_CODE_RECEIVER, faultString, locale);
7171
return new AxiomSoap11Fault(fault, getAxiomFactory());
7272
}
7373

7474
@Override
75-
public Soap11Fault addVersionMismatchFault(String faultString, Locale locale) {
75+
public Soap11Fault addVersionMismatchFault(String faultString, @Nullable Locale locale) {
7676
SOAPFault fault = addStandardFault(SOAP11Constants.FAULT_CODE_VERSION_MISMATCH, faultString, locale);
7777
return new AxiomSoap11Fault(fault, getAxiomFactory());
7878
}
7979

8080
@Override
81-
public Soap11Fault addFault(QName code, String faultString, Locale faultStringLocale) {
81+
public Soap11Fault addFault(QName code, String faultString, @Nullable Locale faultStringLocale) {
8282
Assert.notNull(code, "No faultCode given");
8383
Assert.hasLength(faultString, "faultString cannot be empty");
8484
if (!StringUtils.hasLength(code.getNamespaceURI())) {

spring-ws-core/src/main/java/org/springframework/ws/soap/axiom/AxiomSoap12Body.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,28 +49,28 @@ class AxiomSoap12Body extends AxiomSoapBody implements Soap12Body {
4949
}
5050

5151
@Override
52-
public Soap12Fault addMustUnderstandFault(String reason, Locale locale) {
52+
public Soap12Fault addMustUnderstandFault(String reason, @Nullable Locale locale) {
5353
Assert.notNull(locale, "No locale given");
5454
SOAPFault fault = addStandardFault(SOAP12Constants.FAULT_CODE_MUST_UNDERSTAND, reason, locale);
5555
return new AxiomSoap12Fault(fault, getAxiomFactory());
5656
}
5757

5858
@Override
59-
public Soap12Fault addClientOrSenderFault(String reason, Locale locale) {
59+
public Soap12Fault addClientOrSenderFault(String reason, @Nullable Locale locale) {
6060
Assert.notNull(locale, "No locale given");
6161
SOAPFault fault = addStandardFault(SOAP12Constants.FAULT_CODE_SENDER, reason, locale);
6262
return new AxiomSoap12Fault(fault, getAxiomFactory());
6363
}
6464

6565
@Override
66-
public Soap12Fault addServerOrReceiverFault(String reason, Locale locale) {
66+
public Soap12Fault addServerOrReceiverFault(String reason, @Nullable Locale locale) {
6767
Assert.notNull(locale, "No locale given");
6868
SOAPFault fault = addStandardFault(SOAP12Constants.FAULT_CODE_RECEIVER, reason, locale);
6969
return new AxiomSoap12Fault(fault, getAxiomFactory());
7070
}
7171

7272
@Override
73-
public Soap12Fault addVersionMismatchFault(String reason, Locale locale) {
73+
public Soap12Fault addVersionMismatchFault(String reason, @Nullable Locale locale) {
7474
Assert.notNull(locale, "No locale given");
7575
SOAPFault fault = addStandardFault(SOAP12Constants.FAULT_CODE_VERSION_MISMATCH, reason, locale);
7676
return new AxiomSoap12Fault(fault, getAxiomFactory());

spring-ws-core/src/main/java/org/springframework/ws/soap/saaj/SaajSoap11Body.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ class SaajSoap11Body extends SaajSoapBody implements Soap11Body {
5353
}
5454

5555
@Override
56-
public Soap11Fault addFault(QName faultCode, String faultString, Locale faultStringLocale) {
56+
public Soap11Fault addFault(QName faultCode, String faultString, @Nullable Locale faultStringLocale) {
5757
Assert.notNull(faultCode, "No faultCode given");
5858
Assert.hasLength(faultString, "faultString cannot be empty");
5959
Assert.hasLength(faultCode.getLocalPart(), "faultCode's localPart cannot be empty");
@@ -80,22 +80,22 @@ public Soap11Fault addFault(QName faultCode, String faultString, Locale faultStr
8080
}
8181

8282
@Override
83-
public Soap11Fault addClientOrSenderFault(String faultString, Locale locale) {
83+
public Soap11Fault addClientOrSenderFault(String faultString, @Nullable Locale locale) {
8484
return addFault(SoapVersion.SOAP_11.getClientOrSenderFaultName(), faultString, locale);
8585
}
8686

8787
@Override
88-
public Soap11Fault addMustUnderstandFault(String faultString, Locale locale) {
88+
public Soap11Fault addMustUnderstandFault(String faultString, @Nullable Locale locale) {
8989
return addFault(SoapVersion.SOAP_11.getMustUnderstandFaultName(), faultString, locale);
9090
}
9191

9292
@Override
93-
public Soap11Fault addServerOrReceiverFault(String faultString, Locale locale) {
93+
public Soap11Fault addServerOrReceiverFault(String faultString, @Nullable Locale locale) {
9494
return addFault(SoapVersion.SOAP_11.getServerOrReceiverFaultName(), faultString, locale);
9595
}
9696

9797
@Override
98-
public Soap11Fault addVersionMismatchFault(String faultString, Locale locale) {
98+
public Soap11Fault addVersionMismatchFault(String faultString, @Nullable Locale locale) {
9999
return addFault(SoapVersion.SOAP_11.getVersionMismatchFaultName(), faultString, locale);
100100
}
101101

spring-ws-core/src/main/java/org/springframework/ws/soap/saaj/SaajSoap12Body.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,22 +50,26 @@ class SaajSoap12Body extends SaajSoapBody implements Soap12Body {
5050
}
5151

5252
@Override
53-
public Soap12Fault addClientOrSenderFault(String faultString, Locale locale) {
53+
public Soap12Fault addClientOrSenderFault(String faultString, @Nullable Locale locale) {
54+
Assert.notNull(locale, "No locale given");
5455
return addFault(SoapVersion.SOAP_12.getClientOrSenderFaultName(), faultString, locale);
5556
}
5657

5758
@Override
58-
public Soap12Fault addMustUnderstandFault(String faultString, Locale locale) {
59+
public Soap12Fault addMustUnderstandFault(String faultString, @Nullable Locale locale) {
60+
Assert.notNull(locale, "No locale given");
5961
return addFault(SoapVersion.SOAP_12.getMustUnderstandFaultName(), faultString, locale);
6062
}
6163

6264
@Override
63-
public Soap12Fault addServerOrReceiverFault(String faultString, Locale locale) {
65+
public Soap12Fault addServerOrReceiverFault(String faultString, @Nullable Locale locale) {
66+
Assert.notNull(locale, "No locale given");
6467
return addFault(SoapVersion.SOAP_12.getServerOrReceiverFaultName(), faultString, locale);
6568
}
6669

6770
@Override
68-
public Soap12Fault addVersionMismatchFault(String faultString, Locale locale) {
71+
public Soap12Fault addVersionMismatchFault(String faultString, @Nullable Locale locale) {
72+
Assert.notNull(locale, "No locale given");
6973
return addFault(SoapVersion.SOAP_12.getVersionMismatchFaultName(), faultString, locale);
7074
}
7175

spring-ws-core/src/main/java/org/springframework/ws/soap/soap11/Soap11Body.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,21 +44,22 @@ public interface Soap11Body extends SoapBody {
4444
* @return the added {@code Soap11Fault}
4545
* @throws IllegalArgumentException if the fault faultCode is not fully qualified
4646
*/
47-
Soap11Fault addFault(QName faultCode, String faultString, Locale faultStringLocale) throws SoapFaultException;
47+
Soap11Fault addFault(QName faultCode, String faultString, @Nullable Locale faultStringLocale)
48+
throws SoapFaultException;
4849

4950
@Override
5051
@Nullable Soap11Fault getFault();
5152

5253
@Override
53-
Soap11Fault addMustUnderstandFault(String faultStringOrReason, Locale locale) throws SoapFaultException;
54+
Soap11Fault addMustUnderstandFault(String faultStringOrReason, @Nullable Locale locale) throws SoapFaultException;
5455

5556
@Override
56-
Soap11Fault addClientOrSenderFault(String faultStringOrReason, Locale locale) throws SoapFaultException;
57+
Soap11Fault addClientOrSenderFault(String faultStringOrReason, @Nullable Locale locale) throws SoapFaultException;
5758

5859
@Override
59-
Soap11Fault addServerOrReceiverFault(String faultStringOrReason, Locale locale) throws SoapFaultException;
60+
Soap11Fault addServerOrReceiverFault(String faultStringOrReason, @Nullable Locale locale) throws SoapFaultException;
6061

6162
@Override
62-
Soap11Fault addVersionMismatchFault(String faultStringOrReason, Locale locale) throws SoapFaultException;
63+
Soap11Fault addVersionMismatchFault(String faultStringOrReason, @Nullable Locale locale) throws SoapFaultException;
6364

6465
}

spring-ws-core/src/main/java/org/springframework/ws/soap/soap12/Soap12Body.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,15 +49,15 @@ public interface Soap12Body extends SoapBody {
4949
@Nullable Soap12Fault getFault();
5050

5151
@Override
52-
Soap12Fault addMustUnderstandFault(String faultStringOrReason, Locale locale) throws SoapFaultException;
52+
Soap12Fault addMustUnderstandFault(String faultStringOrReason, @Nullable Locale locale) throws SoapFaultException;
5353

5454
@Override
55-
Soap12Fault addClientOrSenderFault(String faultStringOrReason, Locale locale) throws SoapFaultException;
55+
Soap12Fault addClientOrSenderFault(String faultStringOrReason, @Nullable Locale locale) throws SoapFaultException;
5656

5757
@Override
58-
Soap12Fault addServerOrReceiverFault(String faultStringOrReason, Locale locale) throws SoapFaultException;
58+
Soap12Fault addServerOrReceiverFault(String faultStringOrReason, @Nullable Locale locale) throws SoapFaultException;
5959

6060
@Override
61-
Soap12Fault addVersionMismatchFault(String faultStringOrReason, Locale locale) throws SoapFaultException;
61+
Soap12Fault addVersionMismatchFault(String faultStringOrReason, @Nullable Locale locale) throws SoapFaultException;
6262

6363
}

0 commit comments

Comments
 (0)