net.infonode.properties.propertymap
Class PropertyMapManager

java.lang.Object
  extended bynet.infonode.properties.propertymap.PropertyMapManager

public class PropertyMapManager
extends Object

Utility class for performing multiple modifications to PropertyMap's and merging change notifications to optimize performance.

Version:
$Revision: 1.16 $

Constructor Summary
PropertyMapManager()
           
 
Method Summary
 void beginBatch()
          Begins a batch operation.
 void endBatch()
          Ends a batch operation.
static PropertyMapManager getInstance()
          Returns the only instance of this class.
static void runBatch(Runnable runnable)
          Executes a method inside a beginBatch() - endBatch() pair.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PropertyMapManager

public PropertyMapManager()
Method Detail

getInstance

public static PropertyMapManager getInstance()
Returns the only instance of this class.

Returns:
the only instance of this class

runBatch

public static void runBatch(Runnable runnable)
Executes a method inside a beginBatch() - endBatch() pair. See beginBatch() for more information. It's safe to call other batch methods from inside Runnable.run().

Parameters:
runnable - the runnable to invoke

beginBatch

public void beginBatch()
Begins a batch operation. This stores and merges all change notifications occuring in all property maps until endBatch() is called. Each call to this method MUST be followed by a call to endBatch(). This method can be called an unlimited number of times without calling endBatch() in between, but each call must have a corresponding call to endBatch(). Only when exiting from the outermost endBatch() the changes be propagated to the listeners.


endBatch

public void endBatch()
Ends a batch operation. See beginBatch() for more information.



Copyright © 2007 NNL Technology AB. All Rights Reserved.