Просмотр исходного кода

throw exception when parse unsupported method type and table name

sunyj 8 лет назад
Родитель
Сommit
469bb7d9ec
1 измененных файлов с 13 добавлено и 15 удалено
  1. 13 15
      src/main/java/com/uas/search/jms/QueueMessageParser.java

+ 13 - 15
src/main/java/com/uas/search/jms/QueueMessageParser.java

@@ -50,22 +50,20 @@ public class QueueMessageParser {
 	 */
 	 */
 	public ParsedQueueMessage parse(@NotEmpty("tableName") String tableName, @NotEmpty("dataId") Long dataId, @NotEmpty("methodType") String methodType, String data) throws JSONException {
 	public ParsedQueueMessage parse(@NotEmpty("tableName") String tableName, @NotEmpty("dataId") Long dataId, @NotEmpty("methodType") String methodType, String data) throws JSONException {
 		ParsedQueueMessage parsedQueueMessage = new ParsedQueueMessage();
 		ParsedQueueMessage parsedQueueMessage = new ParsedQueueMessage();
-		// 解析数据库表的更改类型
-		if (methodType.equals("insert")) {
-			parsedQueueMessage.setMethodType(ParsedQueueMessage.INSERT);
-		}
-		else if (methodType.equals("update")) {
-			parsedQueueMessage.setMethodType(ParsedQueueMessage.UPDATE);
-		}
-		else if (methodType.equals("delete")) {
-			parsedQueueMessage.setMethodType(ParsedQueueMessage.DELETE);
-		} else {
-			return null;
-		}
-
-		// 解析哪个表有更改
 		Object object;
 		Object object;
 		try {
 		try {
+			// 解析数据库表的更改类型
+			if (methodType.equals("insert")) {
+				parsedQueueMessage.setMethodType(ParsedQueueMessage.INSERT);
+			} else if (methodType.equals("update")) {
+				parsedQueueMessage.setMethodType(ParsedQueueMessage.UPDATE);
+			} else if (methodType.equals("delete")) {
+				parsedQueueMessage.setMethodType(ParsedQueueMessage.DELETE);
+			} else {
+				throw new IllegalStateException("unsupported method type: " + methodType);
+			}
+
+			// 解析哪个表有更改
 			if (tableName.equals(SearchConstants.KIND_TABLE_NAME)) {
 			if (tableName.equals(SearchConstants.KIND_TABLE_NAME)) {
 				object = parseKind(dataId, methodType);
 				object = parseKind(dataId, methodType);
 			} else if (tableName.equals(SearchConstants.BRAND_TABLE_NAME)) {
 			} else if (tableName.equals(SearchConstants.BRAND_TABLE_NAME)) {
@@ -83,7 +81,7 @@ public class QueueMessageParser {
 			} else if (tableName.equals(SearchConstants.PURCHASE_INVOICE_TABLE_NAME)) {
 			} else if (tableName.equals(SearchConstants.PURCHASE_INVOICE_TABLE_NAME)) {
 				object = parsePurchaseInvoice(dataId, methodType);
 				object = parsePurchaseInvoice(dataId, methodType);
 			} else {
 			} else {
-				return null;
+				throw new IllegalStateException("unsupported table name: " + tableName);
 			}
 			}
 		} catch (Throwable e) {
 		} catch (Throwable e) {
 			// 防止SQLRecoverableException导致应用终止
 			// 防止SQLRecoverableException导致应用终止