Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   *
   * Licensed to the Apache Software Foundation (ASF) under one
   * or more contributor license agreements.  See the NOTICE file
   * distributed with this work for additional information
   * regarding copyright ownership.  The ASF licenses this file
   * to you under the Apache License, Version 2.0 (the
   * "License"); you may not use this file except in compliance
   * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
  *
  */
 
 package org.apache.airavata.ws.monitor.event;
 
 import java.util.List;
 
 
 public abstract class EventProducer {
 
     private static final Logger logger = LoggerFactory.getLogger(EventProducer.class);
 
     private List<EventListenerlisteners = new LinkedList<EventListener>();

    

Parameters:
listener
 
     public void addEventListener(EventListener listener) {
         this..add(listener);
     }

    

Parameters:
listener
 
     public void removeEventListener(EventListener listener) {
         this..remove(listener);
     }

    

Parameters:
event
 
     public void sendSafeEvent(Event event) {
         Throwable exception = null;
         for (EventListener listener : this.) {
             try {
                 listener.eventReceived(event);
             } catch (Throwable e) {
                 .error(e.getMessage(), e);
                 // Just remember the first one.
                 if (exception == null) {
                     exception = e;
                 }
             }
         }
         if (exception != null) {
             if (exception instanceof RuntimeException) {
                 throw (RuntimeExceptionexception;
             } else {
                 throw new WorkflowRuntimeException(exception);
             }
         }
     }

    
 
     public void sendEvent(Event eventthrows WorkflowException {
         Throwable exception = null;
         for (EventListener listener : this.) {
             try {
                 listener.eventReceived(event);
             } catch (Throwable e) {
                 .error(e.getMessage(), e);
                 // Just remember the first one.
                 if (exception == null) {
                     exception = e;
                 }
             }
         }
         if (exception != null) {
             if (exception instanceof WorkflowException) {
                 throw (WorkflowExceptionexception;
             } else {
                throw new WorkflowException(exception);
            }
        }
    }
New to GrepCode? Check out our FAQ X