mirror of
https://github.com/vanitasvitae/Smack.git
synced 2024-12-22 10:37:59 +01:00
Merge pull request #161 from ibauersachs/condition-to-type-mappings
Make XMPPError Condition to Type mapping consistent
This commit is contained in:
commit
997766533f
2 changed files with 44 additions and 8 deletions
|
@ -39,14 +39,14 @@ import org.jivesoftware.smack.util.XmlStringBuilder;
|
|||
* <tr><td>conflict</td><td>CANCEL</td><td>8.3.3.2</td></tr>
|
||||
* <tr><td>feature-not-implemented</td><td>CANCEL</td><td>8.3.3.3</td></tr>
|
||||
* <tr><td>forbidden</td><td>AUTH</td><td>8.3.3.4</td></tr>
|
||||
* <tr><td>gone</td><td>MODIFY</td><td>8.3.3.5</td></tr>
|
||||
* <tr><td>gone</td><td>CANCEL</td><td>8.3.3.5</td></tr>
|
||||
* <tr><td>internal-server-error</td><td>WAIT</td><td>8.3.3.6</td></tr>
|
||||
* <tr><td>item-not-found</td><td>CANCEL</td><td>8.3.3.7</td></tr>
|
||||
* <tr><td>jid-malformed</td><td>MODIFY</td><td>8.3.3.8</td></tr>
|
||||
* <tr><td>not-acceptable</td><td> MODIFY</td><td>8.3.3.9</td></tr>
|
||||
* <tr><td>not-acceptable</td><td>MODIFY</td><td>8.3.3.9</td></tr>
|
||||
* <tr><td>not-allowed</td><td>CANCEL</td><td>8.3.3.10</td></tr>
|
||||
* <tr><td>not-authorized</td><td>AUTH</td><td>8.3.3.11</td></tr>
|
||||
* <tr><td>policy-violation</td><td>AUTH</td><td>8.3.3.12</td></tr>
|
||||
* <tr><td>policy-violation</td><td>MODIFY</td><td>8.3.3.12</td></tr>
|
||||
* <tr><td>recipient-unavailable</td><td>WAIT</td><td>8.3.3.13</td></tr>
|
||||
* <tr><td>redirect</td><td>MODIFY</td><td>8.3.3.14</td></tr>
|
||||
* <tr><td>registration-required</td><td>AUTH</td><td>8.3.3.15</td></tr>
|
||||
|
@ -55,7 +55,7 @@ import org.jivesoftware.smack.util.XmlStringBuilder;
|
|||
* <tr><td>resource-constraint</td><td>WAIT</td><td>8.3.3.18</td></tr>
|
||||
* <tr><td>service-unavailable</td><td>CANCEL</td><td>8.3.3.19</td></tr>
|
||||
* <tr><td>subscription-required</td><td>AUTH</td><td>8.3.3.20</td></tr>
|
||||
* <tr><td>undefined-condition</td><td>WAIT</td><td>8.3.3.21</td></tr>
|
||||
* <tr><td>undefined-condition</td><td>MODIFY</td><td>8.3.3.21</td></tr>
|
||||
* <tr><td>unexpected-request</td><td>WAIT</td><td>8.3.3.22</td></tr>
|
||||
* </table>
|
||||
*
|
||||
|
@ -70,7 +70,7 @@ public class XMPPError extends AbstractError {
|
|||
public static final String ERROR = "error";
|
||||
|
||||
private static final Logger LOGGER = Logger.getLogger(XMPPError.class.getName());
|
||||
private static final Map<Condition, Type> CONDITION_TO_TYPE = new HashMap<Condition, Type>();
|
||||
static final Map<Condition, Type> CONDITION_TO_TYPE = new HashMap<Condition, Type>();
|
||||
|
||||
static {
|
||||
CONDITION_TO_TYPE.put(Condition.bad_request, Type.MODIFY);
|
||||
|
@ -91,9 +91,10 @@ public class XMPPError extends AbstractError {
|
|||
CONDITION_TO_TYPE.put(Condition.remote_server_not_found, Type.CANCEL);
|
||||
CONDITION_TO_TYPE.put(Condition.remote_server_timeout, Type.WAIT);
|
||||
CONDITION_TO_TYPE.put(Condition.resource_constraint, Type.WAIT);
|
||||
CONDITION_TO_TYPE.put(Condition.service_unavailable, Type.WAIT);
|
||||
CONDITION_TO_TYPE.put(Condition.subscription_required, Type.WAIT);
|
||||
CONDITION_TO_TYPE.put(Condition.unexpected_request, Type.MODIFY);
|
||||
CONDITION_TO_TYPE.put(Condition.service_unavailable, Type.CANCEL);
|
||||
CONDITION_TO_TYPE.put(Condition.subscription_required, Type.AUTH);
|
||||
CONDITION_TO_TYPE.put(Condition.undefined_condition, Type.MODIFY);
|
||||
CONDITION_TO_TYPE.put(Condition.unexpected_request, Type.WAIT);
|
||||
}
|
||||
|
||||
private final Condition condition;
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
/**
|
||||
*
|
||||
* Copyright © 2017 Ingo Bauersachs
|
||||
*
|
||||
* Licensed 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.jivesoftware.smack.packet;
|
||||
|
||||
import static org.jivesoftware.smack.packet.XMPPError.Condition;
|
||||
import static org.jivesoftware.smack.packet.XMPPError.Type;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
public class XMPPErrorTest {
|
||||
@Test
|
||||
public void testConditionHasDefaultTypeMapping() throws NoSuchFieldException, IllegalAccessException {
|
||||
Map<Condition, Type> conditionToTypeMap = XMPPError.CONDITION_TO_TYPE;
|
||||
assertEquals("CONDITION_TO_TYPE map is likely out of sync with Condition enum",
|
||||
Condition.values().length,
|
||||
conditionToTypeMap.size());
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue