From 58489d0dceb7a72ea38db94f703606ee87259f1a Mon Sep 17 00:00:00 2001
From: Hendrik Buschmeier <hbuschme@uni-bielefeld.de>
Date: Wed, 19 Jun 2013 16:22:14 +0200
Subject: [PATCH] Added new interface of IUEventHandler to Buffer.

---
 ipaacalib/java/src/ipaaca/Buffer.java | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/ipaacalib/java/src/ipaaca/Buffer.java b/ipaacalib/java/src/ipaaca/Buffer.java
index e335e1f..71c75b7 100644
--- a/ipaacalib/java/src/ipaaca/Buffer.java
+++ b/ipaacalib/java/src/ipaaca/Buffer.java
@@ -1,7 +1,9 @@
 package ipaaca;
 
 import java.util.ArrayList;
+import java.util.EnumSet;
 import java.util.List;
+import java.util.Set;
 import java.util.UUID;
 
 /**
@@ -63,10 +65,35 @@ public abstract class Buffer
     // """
     // handler = IUEventHandler(handler_function=handler_function, for_event_types=for_event_types, for_categories=for_categories)
     // self._iu_event_handlers.append(handler)
+
     public void registerHandler(IUEventHandler handler)
     {
         eventHandlers.add(handler);
     }
+   
+    public void registerHandler(HandlerFunctor func) {
+    	IUEventHandler handler;
+    	handler = new IUEventHandler(func);
+    	registerHandler(handler);
+    }
+    
+    public void registerHandler(HandlerFunctor func, Set<String> categories) {
+    	IUEventHandler handler;
+    	handler = new IUEventHandler(func, categories);
+    	registerHandler(handler);
+    }
+    
+    public void registerHandler(HandlerFunctor func, EnumSet<IUEventType> eventTypes) {
+    	IUEventHandler handler;
+    	handler = new IUEventHandler(func, eventTypes);
+    	registerHandler(handler);
+    }
+   
+    public void registerHandler(HandlerFunctor func, EnumSet<IUEventType> eventTypes, Set<String> categories) {
+    	IUEventHandler handler;
+    	handler = new IUEventHandler(func, eventTypes, categories);
+    	registerHandler(handler);
+    }
 
     // def call_iu_event_handlers(self, uid, local, event_type, category):
     // """Call registered IU event handler functions registered for this event_type and category."""
-- 
GitLab