Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 372960 | Differences between
and this patch

Collapse All | Expand All

(-)src/org/eclipse/rwt/internal/lifecycle/PhaseListenerManager.java (-8 / +8 lines)
Lines 1-5 Link Here
1
/*******************************************************************************
1
/*******************************************************************************
2
 * Copyright (c) 2011 EclipseSource and others.
2
 * Copyright (c) 2011, 2012 EclipseSource and others.
3
 * All rights reserved. This program and the accompanying materials
3
 * All rights reserved. This program and the accompanying materials
4
 * are made available under the terms of the Eclipse Public License v1.0
4
 * are made available under the terms of the Eclipse Public License v1.0
5
 * which accompanies this distribution, and is available at
5
 * which accompanies this distribution, and is available at
Lines 11-17 Link Here
11
package org.eclipse.rwt.internal.lifecycle;
11
package org.eclipse.rwt.internal.lifecycle;
12
12
13
import java.text.MessageFormat;
13
import java.text.MessageFormat;
14
import java.util.HashSet;
14
import java.util.LinkedHashSet;
15
import java.util.Set;
15
import java.util.Set;
16
16
17
import org.eclipse.rwt.internal.service.ServletLog;
17
import org.eclipse.rwt.internal.service.ServletLog;
Lines 24-43 Link Here
24
  private final ILifeCycle eventSource;
24
  private final ILifeCycle eventSource;
25
  private final Object lock;
25
  private final Object lock;
26
  private final Set<PhaseListener> phaseListeners;
26
  private final Set<PhaseListener> phaseListeners;
27
  
27
28
  PhaseListenerManager( ILifeCycle eventSource ) {
28
  PhaseListenerManager( ILifeCycle eventSource ) {
29
    this.eventSource = eventSource;
29
    this.eventSource = eventSource;
30
    this.lock = new Object();
30
    this.lock = new Object();
31
    this.phaseListeners = new HashSet<PhaseListener>();
31
    this.phaseListeners = new LinkedHashSet<PhaseListener>();
32
  }
32
  }
33
  
33
34
  void addPhaseListener( PhaseListener phaseListener ) {
34
  void addPhaseListener( PhaseListener phaseListener ) {
35
    ParamCheck.notNull( phaseListener, "phaseListener" );
35
    ParamCheck.notNull( phaseListener, "phaseListener" );
36
    synchronized( lock ) {
36
    synchronized( lock ) {
37
      phaseListeners.add( phaseListener );
37
      phaseListeners.add( phaseListener );
38
    }
38
    }
39
  }
39
  }
40
  
40
41
  void addPhaseListeners( PhaseListener[] phaseListeners ) {
41
  void addPhaseListeners( PhaseListener[] phaseListeners ) {
42
    ParamCheck.notNull( phaseListeners, "phaseListeners" );
42
    ParamCheck.notNull( phaseListeners, "phaseListeners" );
43
    for( int i = 0; i < phaseListeners.length; i++ ) {
43
    for( int i = 0; i < phaseListeners.length; i++ ) {
Lines 59-65 Link Here
59
      return result;
59
      return result;
60
    }
60
    }
61
  }
61
  }
62
  
62
63
  void notifyBeforePhase( PhaseId phase ) {
63
  void notifyBeforePhase( PhaseId phase ) {
64
    PhaseListener[] phaseListeners = getPhaseListeners();
64
    PhaseListener[] phaseListeners = getPhaseListeners();
65
    PhaseEvent event = new PhaseEvent( eventSource, phase );
65
    PhaseEvent event = new PhaseEvent( eventSource, phase );
Lines 89-95 Link Here
89
      }
89
      }
90
    }
90
    }
91
  }
91
  }
92
  
92
93
  private static boolean mustNotify( PhaseId phase, PhaseId listenerPhase ) {
93
  private static boolean mustNotify( PhaseId phase, PhaseId listenerPhase ) {
94
    return listenerPhase == PhaseId.ANY || listenerPhase == phase;
94
    return listenerPhase == PhaseId.ANY || listenerPhase == phase;
95
  }
95
  }

Return to bug 372960