You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-commits@xmlgraphics.apache.org by je...@apache.org on 2008/03/05 15:24:07 UTC

svn commit: r633856 - in /xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events: Event.java EventExceptionManager.java EventListener.java EventProducer.java

Author: jeremias
Date: Wed Mar  5 06:24:04 2008
New Revision: 633856

URL: http://svn.apache.org/viewvc?rev=633856&view=rev
Log:
Javadocs and TODOs.
EventListeners can change the event severity.

Modified:
    xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/Event.java
    xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventExceptionManager.java
    xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventListener.java
    xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventProducer.java

Modified: xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/Event.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/Event.java?rev=633856&r1=633855&r2=633856&view=diff
==============================================================================
--- xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/Event.java (original)
+++ xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/Event.java Wed Mar  5 06:24:04 2008
@@ -25,27 +25,60 @@
 
 import org.apache.fop.events.model.EventSeverity;
 
+/**
+ * This is the default event class used by this package. Each event has a unique event identifier
+ * (a String), a severity indicator and a map of name/value pairs.
+ */
 public class Event extends EventObject {
 
     private String eventID;
     private EventSeverity severity;
     private Map params;
     
+    /**
+     * Creates a new Event.
+     * @param source the object that creates the event
+     * @param eventID the unique identifier of the event
+     * @param severity the severity level
+     * @param params the event parameters (a map of name/value pairs)
+     */
     public Event(Object source, String eventID, EventSeverity severity, Map params) {
         super(source);
         this.eventID = eventID;
-        this.severity = severity;
+        setSeverity(severity);
         this.params = params;
     }
     
+    /**
+     * Returns the event identifier.
+     * @return the event identifier
+     */
     public String getEventID() {
         return this.eventID;
     }
     
+    /**
+     * Returns the severity level.
+     * @return the severity level
+     */
     public EventSeverity getSeverity() {
         return this.severity;
     }
+    
+    /**
+     * Sets the event's severity level. This method can be used to increase or decrease the
+     * severity level in a listener.
+     * @param severity the new event severity
+     */
+    public void setSeverity(EventSeverity severity) {
+        this.severity = severity;
+    }
 
+    /**
+     * Returns a parameter.
+     * @param key the key to the parameter
+     * @return the parameter value or null if no value with this key is found
+     */
     public Object getParam(String key) {
         if (this.params != null) {
             return this.params.get(key);
@@ -54,6 +87,10 @@
         }
     }
     
+    /**
+     * Returns an unmodifiable {@link java.util.Map} with all event parameters.
+     * @return the parameter map
+     */
     public Map getParams() {
         return Collections.unmodifiableMap(this.params);
     }
@@ -62,13 +99,26 @@
         return null;
     }
     
+    /**
+     * Creates and returns a fluent builder object for building up the parameter map.
+     * @return the parameter builder
+     */
     public static ParamsBuilder paramsBuilder() {
         return new ParamsBuilder();
     }
     
+    /**
+     * This class is a fluent builder class for building up the parameter map.
+     */
     public static class ParamsBuilder {
         private Map params;
         
+        /**
+         * Adds a new parameter (a name/value pair).
+         * @param name the name of the parameter
+         * @param value the value of the parameter
+         * @return this instance
+         */
         public ParamsBuilder param(String name, Object value) {
             if (this.params == null) {
                 this.params = new java.util.HashMap();
@@ -77,6 +127,10 @@
             return this;
         }
         
+        /**
+         * Returns the accumulated parameter map.
+         * @return the accumulated parameter map
+         */
         public Map build() {
             return this.params;
         }

Modified: xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventExceptionManager.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventExceptionManager.java?rev=633856&r1=633855&r2=633856&view=diff
==============================================================================
--- xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventExceptionManager.java (original)
+++ xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventExceptionManager.java Wed Mar  5 06:24:04 2008
@@ -63,6 +63,7 @@
         Throwable createException(Event event);
     }
     
+    //TODO Move me out of here as I'm FOP-dependent!
     private static class ValidationExceptionFactory implements ExceptionFactory {
 
         public Throwable createException(Event event) {

Modified: xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventListener.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventListener.java?rev=633856&r1=633855&r2=633856&view=diff
==============================================================================
--- xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventListener.java (original)
+++ xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventListener.java Wed Mar  5 06:24:04 2008
@@ -19,8 +19,19 @@
 
 package org.apache.fop.events;
 
+/**
+ * This interface is implemented by clients who want to listen for events.
+ */
 public interface EventListener extends java.util.EventListener {
 
+    /**
+     * This method is called for each event that is generated. With the event's ID it is possible
+     * to react to certain events. Events can also simply be recorded and presented to a user.
+     * It is possible to throw an (unchecked) exception if the processing needs to be aborted
+     * because some special event occured. This way the client can configure the behaviour of
+     * the observed application.
+     * @param event the event
+     */
     void processEvent(Event event);
     
 }

Modified: xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventProducer.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventProducer.java?rev=633856&r1=633855&r2=633856&view=diff
==============================================================================
--- xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventProducer.java (original)
+++ xmlgraphics/fop/branches/Temp_ProcessingFeedback/src/java/org/apache/fop/events/EventProducer.java Wed Mar  5 06:24:04 2008
@@ -19,6 +19,13 @@
 
 package org.apache.fop.events;
 
+/**
+ * This is a marker interface which all event producer interfaces need to extend. These interface
+ * the agree to a convention:
+ * <ul>
+ *   <li>The first parameter of each method must be: <code>Object source</code>
+ * </ul>
+ */
 public interface EventProducer {
 
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: fop-commits-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: fop-commits-help@xmlgraphics.apache.org