package org.ctrip.ops.sysdev.filters;

import java.util.Map;
import java.util.concurrent.ArrayBlockingQueue;

public class Uppercase extends BaseFilter {
	public Uppercase(Map config, ArrayBlockingQueue inputQueue) {
		super(config, inputQueue);
	}

	private String src;

	protected void prepare() {
		this.src = (String) config.get("src");
	};

	@Override
	protected Map filter(Map event) {
		if (event.containsKey(this.src)) {
			event.put(this.src, ((String) event.get(src)).toUpperCase());
		}
		return event;
	}
}

@@ -32,16 +32,44 @@
 lters;%0A%0A
+import java.util.ArrayList;%0A
 import j
@@ -284,18 +284,32 @@
 ate 
-String src
+ArrayList%3CString%3E fields
 ;%0A%0A%09
@@ -346,21 +346,35 @@
 his.
-src = (
+fields = (ArrayList%3C
 String
+%3E
 ) co
@@ -383,19 +383,22 @@
 ig.get(%22
-src
+fields
 %22);%0A%09%7D;%0A
@@ -444,16 +444,49 @@
 vent) %7B%0A
+%09%09for (String field : fields) %7B%0A%09
 %09%09if (ev
@@ -505,21 +505,19 @@
 Key(
-this.src
+field
 )) %7B%0A
+%09
 %09%09%09e
@@ -529,16 +529,13 @@
 put(
-this.src
+field
 , ((
@@ -556,11 +556,13 @@
 get(
-src
+field
 )).t
@@ -578,17 +578,23 @@
 e());%0A%09%09
-%7D
+%09%7D%0A%09%09%7D%0A
 %0A%09%09retur

fix bug