Author: konstantin.mishin
Date: 2008-09-29 09:05:00 -0400 (Mon, 29 Sep 2008)
New Revision: 10594
Added:
trunk/framework/api/src/main/java/org/ajax4jsf/model/Queue.java
trunk/framework/api/src/main/java/org/ajax4jsf/model/QueuesManager.java
Log:
Interface and manager class for queue.
Added: trunk/framework/api/src/main/java/org/ajax4jsf/model/Queue.java
===================================================================
--- trunk/framework/api/src/main/java/org/ajax4jsf/model/Queue.java
(rev 0)
+++ trunk/framework/api/src/main/java/org/ajax4jsf/model/Queue.java 2008-09-29 13:05:00
UTC (rev 10594)
@@ -0,0 +1,21 @@
+/**
+ *
+ */
+package org.ajax4jsf.model;
+
+/**
+ * @author Konstantin Mishin
+ *
+ */
+public interface Queue {
+
+ String getName();
+
+ Integer getRequestDelay();
+
+ Integer getTimeout();
+
+ Boolean isLimitToList();
+
+ Boolean isIgnoreDupResponses();
+}
Added: trunk/framework/api/src/main/java/org/ajax4jsf/model/QueuesManager.java
===================================================================
--- trunk/framework/api/src/main/java/org/ajax4jsf/model/QueuesManager.java
(rev 0)
+++ trunk/framework/api/src/main/java/org/ajax4jsf/model/QueuesManager.java 2008-09-29
13:05:00 UTC (rev 10594)
@@ -0,0 +1,56 @@
+package org.ajax4jsf.model;
+
+import java.util.Map;
+
+import javax.faces.context.FacesContext;
+
+/**
+ * @author Konstantin Mishin
+ *
+ */
+public class QueuesManager {
+
+ static private final String MAP_KEY_PREFIX = QueuesManager.class.getSimpleName();
+
+ static public void put(Queue queue, FacesContext context) throws
IllegalArgumentException{
+ if (context == null) {
+ context = FacesContext.getCurrentInstance();
+ }
+ String name = queue.getName();
+ String key = MAP_KEY_PREFIX + name;
+ Map<String, Object> attributes = context.getViewRoot().getAttributes();
+ if (!attributes.containsKey(key)) {
+ attributes.put(key, queue);
+ } else {
+ throw new IllegalArgumentException("Queue whis name '" + name +
"' has already been used");
+ }
+ }
+
+ static public void put(Queue queue) throws IllegalArgumentException {
+ put(queue, null);
+ }
+
+ static public Queue get(String name, FacesContext context) {
+ if (context == null) {
+ context = FacesContext.getCurrentInstance();
+ }
+ Object object = context.getViewRoot().getAttributes().get(MAP_KEY_PREFIX + name);
+ return (Queue)object;
+ }
+
+ static public Queue get(String name) {
+ return get(name, null);
+ }
+
+ static public Queue remove(String name, FacesContext context) {
+ if (context == null) {
+ context = FacesContext.getCurrentInstance();
+ }
+ Object object = context.getViewRoot().getAttributes().remove(MAP_KEY_PREFIX + name);
+ return (Queue)object;
+ }
+
+ static public Queue remove(String name) {
+ return remove(name, null);
+ }
+}
Show replies by date