diff options
Diffstat (limited to 'src/main/java/de/thedevstack/conversationsplus/xmpp/stanzas/IqErrorCondition.java')
-rw-r--r-- | src/main/java/de/thedevstack/conversationsplus/xmpp/stanzas/IqErrorCondition.java | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/src/main/java/de/thedevstack/conversationsplus/xmpp/stanzas/IqErrorCondition.java b/src/main/java/de/thedevstack/conversationsplus/xmpp/stanzas/IqErrorCondition.java new file mode 100644 index 00000000..688ea007 --- /dev/null +++ b/src/main/java/de/thedevstack/conversationsplus/xmpp/stanzas/IqErrorCondition.java @@ -0,0 +1,48 @@ +package de.thedevstack.conversationsplus.xmpp.stanzas; + +/** + */ +public enum IqErrorCondition { + BAD_REQUEST(IqErrorType.MODIFY), + CONFLICT(IqErrorType.CANCEL), + FEATURE_NOT_IMPLEMENTED(IqErrorType.CANCEL), + FORBIDDEN(IqErrorType.AUTH), + GONE(IqErrorType.MODIFY), + INTERNAL_SERVER_ERROR(IqErrorType.WAIT), + ITEM_NOT_FOUND(IqErrorType.CANCEL), + JID_MALFORMED(IqErrorType.MODIFY), + NOT_ACCEPTABLE(IqErrorType.MODIFY), + NOT_ALLOWED(IqErrorType.CANCEL), + NOT_AUTHORIZED(IqErrorType.AUTH), + PAYMENT_REQUIRED(IqErrorType.AUTH), + RECIPIENT_UNAVAILABLE(IqErrorType.WAIT), + REDIRECT(IqErrorType.MODIFY), + REGISTRATION_REQUIRED(IqErrorType.AUTH), + REMOTE_SERVER_NOT_FOUND(IqErrorType.CANCEL), + REMOTE_SERVER_TIMEOUT(IqErrorType.WAIT), + RESOURCE_CONSTRAINT(IqErrorType.WAIT), + SERVICE_UNAVAILABLE(IqErrorType.CANCEL), + SUBSCRIPTION_REQUIRED(IqErrorType.AUTH), + UNDEFINED_CONDITION(IqErrorType.CANCEL), + UNEXPECTED_REQUEST(IqErrorType.WAIT) + ; + + private IqErrorType type; + + IqErrorCondition(IqErrorType type) { + this.type = type; + } + + public IqErrorType getType() { + return type; + } + + public static IqErrorCondition fromString(String condition) { + return (null != condition) ? Enum.valueOf(IqErrorCondition.class, condition.toUpperCase().replaceAll("-", "_")) : null; + } + + @Override + public String toString() { + return super.toString().toLowerCase().replaceAll("_", "-"); + } +} |